草庐IT

c# - 为什么我不能在类中使用 HttpServerUtility.HtmlEncode?

我正在尝试使用以下代码:stringmyString=HttpServerUtility.HtmlEncode("mylink&details");我收到以下错误:Anobjectreferenceisrequiredforthenonstaticfield,method,orproperty.为什么我不能在类中使用HttpServerUtility.HtmlEncode? 最佳答案 您可以改用HttpUtility,它有一个不依赖于HttpContext的静态方法。stringmyString=HttpUtility.HtmlEn

c#在类中初始化一个静态列表

我想要的是一个用字符串初始化的二维全局列表。如果我只想要一个简单的列表,我可以像这样用逗号分隔的字符串初始化列表publicstaticreadonlyList_architecturesName=newList(){"x86","x64"};我已经设置了一个静态类Globals,在这个类中我添加了一个基于另一个类ArchitecturesClass的列表,用作列表的字段,类似于做了什么herepublicclassArchecturesClass{publicstringId{get;set;}publicstringName{get;set;}}//test1:publicstat

c# - 在类主体之外但在 namespace 内的枚举定义

今天,我遇到了一些这样的代码。namespaceFoo{publicenumGame{High,Low};publicenumSwitch{On,Off};publicclassBar(){//Blah}}我无法弄清楚这与在类中声明枚举之间的区别是什么。AFAIK,您仍然可以“覆盖”类中的那些枚举。 最佳答案 枚举是类型,就像类一样。当您在类中声明枚举时,它只是一个嵌套类型。嵌套枚举只是隐藏在外部范围中声明的具有相同名称的其他枚举,但您仍然可以通过其完全限定名称引用隐藏的枚举(在您的示例中使用namespace前缀)。决定是声明顶级

c# - 在类 C# 中使用 ref

我想为我正在制作的类(class)提供一个特定的链表。我希望类写入该列表(例如通过.addLast())。我应该为此使用ref关键字吗?我对在C#中在哪里使用ref和out关键字感到有些困惑,因为所有classes都是在堆上动态分配的,并且我们实际上使用指针进行大多数操作。当然,out和ref关键字对于基元和结构是有意义的。还有,如果我不直接发送列表,而是发送一个包含列表的类呢?(它是internal并且需要),我还需要使用ref吗?或者如果我在函数之间传递它,例如:voidA(refLinkedListlist){B(list);}voidB(refLinkedListlist){_

c# - 我应该在类里面输入多少信息? (面向对象)

我是一名C#编程的一级学生,尽管我已经涉足编程几年了,而且我正在做的是超越类所教内容的学习,所以我已经做好了充分的准备一旦我进入工作环境。这个特定的类(class)根本不是OOP,那实际上是下一个类,但是对于这个项目,老师说他不介意我们超越并在OOP中完成项目(事实上你不能得到A在他的类里面,除非你无论如何都超越)。该项目(此时)是逐字节读取XML文件,将元素标签存储到一个数组,将数据值存储到另一个数组。我在这个问题上与他争论过(考虑到处理XML的.net框架)但那是一场失败的战斗。他希望我们在不使用.netXML的情况下编写代码。他确实为这个他随意组合的程序提供了一个OOP示例(最初

php - 使用构造函数分配属性值和在类声明中分配属性有什么区别?

使用构造函数分配属性值和在类声明中直接分配属性有什么区别?换句话说,下面两段为新对象设置默认值的代码有什么区别?直接赋值的代码:带有构造函数的代码:name="aName";$this->weight=80;$this->age=25;$this->units=0.02;}}?>你可能会回答说我不能改变硬编码的属性,但我可以在下面的代码中(在本地服务器中):name.''."is".''.$this->age.''."yearsold";echo$this->name.''."iseating".''.$this->units.''."unitsoffood";$this->weigh

php - 为什么加载的 PHP 扩展会在类实例化时失败?

我有一些调整图像大小的代码,使用Imagick或GD,具体取决于服务器上可用的内容。我正在使用extension_loaded()函数测试每一个的可用性。if(extension_loaded('imagick')){$image=newImagick();...}我有一位用户报告说他们收到了:Fatalerror:Class'Imagick'notfound什么情况会导致加载了Imagick扩展但类不可用?我应该如何进行测试以使我的代码更健壮? 最佳答案 1:始终以不区分大小写的方式进行检查(在比较之前将字符串设为小写)2:不检查

php - 在类中使用数组遍历

我有一个小的编程问题。我正在尝试在一个类中执行一个函数,并且我有一个数组,我正在使用array_walk对该数组中的每个变量执行一个函数。问题是我正在执行的函数是同一个类中的一个方法。我查看了我的代码,但找不到问题所在。请让我知道此错误的可能解决方案是什么,或者如果您看到我没有看到的内容。目前它甚至没有执行函数escape()。我特意在状态变量中添加了一个',因为我希望它被转义,但它没有被转义。一点背景知识:这是我正在构建的数据库类,prepare()方法将有助于在执行查询之前转义查询中的变量。我删除了一些与此问题无关的代码。这是它给我的结果:UPDATEtable_nameSETst

php - __set 和 __get 方法在类内外的行为是否不同?

我正在研究PHP中的OOP,并尝试编写一个基本的Session类,它将创建一个Session数组。在实例化类时,用户将提供数组的第一维,然后我希望他们能够向该session添加任何变量/值组合。例如:$session=newMy_Session('testing');$session->boy='girl';应该等同于输入$_SESSION['testing']['boy']='girl';我以为我可以使用PHP神奇的__set和__get方法,但我的输出不是预期的。下面是我的类(class)、示例和结果:类:classMy_Session{function__construct($s

php - 无法在类 App\bill、Laravel 中使非静态方法 Illuminate\Database\Eloquent\Model::getTable() 静态化

我在模型中创建了如下方法:classbillextendsModel{publicstaticfunctiongetTable(){$tables=Bill::where('order_type','0')->where('table_no','','')->groupBy('table_no')->get();return$tables;}}在Controller中我访问这个方法是publicfunctionbill(){$data=Bill::getTable();returnview('bill.bills');}它给出错误,因为Cannotmakenonstaticmethod