草庐IT

c# - 对不可变结构使用公共(public)只读字段是否有效?

这是声明不可变结构的正确方法吗?publicstructPair{publicreadonlyintx;publicreadonlyinty;//Constructorandstuff}我想不出为什么这会遇到问题,但我只是想问清楚。在这个例子中,我使用了整数。如果我改用一个类,但那个类也是不可变的,就像这样怎么办?这应该也能正常工作,对吧?publicstructPair{publicreadonly(immutableClass)x;publicreadonly(immutableClass)y;//Constructorandstuff}(另外:我知道使用Properties更通用

c# - 要使用只读属性还是方法?

我需要公开类实例的“已映射?”状态。结果由基本检查决定。它不是只是暴露字段的值。我不确定是否应该使用只读属性或方法。只读属性:publicboolIsMapped{get{returnMappedField!=null;}}方法:publicboolIsMapped(){returnMappedField!=null;}我已阅读MSDN的ChoosingBetweenPropertiesandMethods但我仍然不确定。 最佳答案 C#标准说§8.7.4Apropertyisamemberthatprovidesaccesstoa

c# - 如何实现只读属性

我需要在我的类型上实现一个只读属性。此外,此属性的值将在构造函数中设置并且不会更改(我正在编写一个类来公开WPF的自定义路由UI命令,但这并不重要)。我看到了两种方法:classMyClass{publicreadonlyobjectMyProperty=newobject();}classMyClass{privatereadonlyobjectmy_property=newobject();publicobjectMyProperty{get{returnmy_property;}}}所有这些FxCop错误都说我不应该有公共(public)成员变量,看来第二种方法是正确的。正确吗?

c# - 如何从文件中删除单个属性(例如只读)?

假设一个文件具有以下属性:ReadOnly、Hidden、Archived、System。如何只删除一个属性?(例如ReadOnly)如果我使用以下内容,它会删除所有属性:IO.File.SetAttributes("File.txt",IO.FileAttributes.Normal) 最佳答案 回答标题中有关ReadOnly属性的问题:FileInfofileInfo=newFileInfo(pathToAFile);fileInfo.IsReadOnly=false;要自己控制任何属性,您可以使用File.SetAttribu

c# - 为只读字段调用不纯方法

我正在使用VisualStudio2010+ReSharper,它在以下代码中显示警告:if(rect.Contains(point)){...}rect是一个readonlyRectangle字段,ReSharper向我显示此警告:"ImpureMethodiscalledforreadonlyfieldofvaluetype."什么是不纯的方法,为什么会向我显示此警告? 最佳答案 首先,Jon、Michael和Jared的回答基本上是正确的,但我还有一些要补充的内容。Whatismeantbyan"impure"method?更

c# - 如何在 ASP.NET MVC3 Razor 中创建只读文本框

如何使用RazorView引擎在ASP.NETMVC3中创建只读文本框?有没有HTMLHelper方法可以做到这一点?像下面这样的东西?@Html.ReadOnlyTextBoxFor(m=>m.userCode) 最佳答案 @Html.TextBoxFor(m=>m.userCode,new{@readonly="readonly"})欢迎您为此制作一个HTMLHelper,但这只是一个HTML属性,与其他属性一样。您会为具有其他属性的文本框制作HTMLHelper吗? 关于c#-如何

c# - 我可以使用反射更改 C# 中的私有(private)只读字段吗?

我想知道,既然使用反射可以做很多事情,那么我可以在构造函数执行完成后更改一个私有(private)只读字段吗?(注:纯属好奇)publicclassFoo{privatereadonlyintbar;publicFoo(intnum){bar=num;}publicintGetBar(){returnbar;}}Foofoo=newFoo(123);Console.WriteLine(foo.GetBar());//display123//reflectioncodehere...Console.WriteLine(foo.GetBar());//display456

jquery - 如何使用 jQuery 将输入设置为只读?

我有以下输入:如何在不更改元素或其值的情况下使用jQuery使该元素成为只读输入? 最佳答案 现在使用jQuery1.6.1或更高版本,建议在设置bool属性/属性时使用.prop()。$("#fieldName").prop("readonly",true); 关于jquery-如何使用jQuery将输入设置为只读?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/1362153

javascript - 是否可以通过 CSS 将输入字段设置为只读?

我知道通过应用readonlybool属性将输入元素设置为只读,并且作为一个属性它不受CSS影响。另一方面,我的场景似乎非常适合CSS,所以我希望有某种CSS技巧可以让我做到这一点。我的表单上有一个可打印版本超链接。单击它会显示文档的...可打印版本。它主要是CSS的东西,我的print.css看起来像这样:html.print{width:8.57in;}.printbody{font:9pt/1.5Arial,sans-serif;margin:01in;overflow:auto;}.print#header,.print#footer{display:none;}.print.

javascript - 纯 JavaScript 可以实现只读属性吗?

查看mozilladocumentation,查看正则表达式示例(标题为“使用匹配结果创建数组”),我们有如下语句:input:Aread-onlypropertythatreflectstheoriginalstringagainstwhichtheregularexpressionwasmatched.index:Aread-onlypropertythatisthezero-basedindexofthematchinthestring.等等...是否有可能在JavaScript中创建您自己的具有只读属性的对象,或者这是为特定浏览器实现的内置类型保留的特权?