Tag: 属性

任何人都有C#MVC的出生日期validation属性?

有人必须在此之前写过:-) 我需要一个出生日期的validation属性来检查日期是否在特定范围内 – 即用户尚未输入尚未发生的日期或过去150年。 感谢您的任何指示!

多次使用属性时的性能考虑因素

我在使用string.format格式化我的字符串时使用CultureInfo.CurrentCulture 引用此博客 这只是暗示如果你经常使用CurrentCulture,可能值得将它读入私有变量,而不是大量调用CultureInfo.CurrentCulture,否则你将不必要地耗尽时钟周期。 所以这个作者 var culture = CultureInfo.CurrentCulture string.Format(culture,”{0} some format string”,”some args”); string.Format(culture,”{0} some format string”,”some other args”); 比…更好 string.Format(CultureInfo.CurrentCulture,”{0} some format string”,”some args”); string.Format(CultureInfo.CurrentCulture,”{0} some format string”,”some other args”); 根据MSDN, CultureInfo.CurrentCulture是一个属性 多次访问属性时是否存在性能损失? 我还做了一些经验分析,我的测试表明,使用局部变量比直接使用属性更昂贵。 Stopwatch watch = new Stopwatch(); int count = 100000000; watch.Start(); for(int i=0;i<count;i++) { string.Format(CultureInfo.CurrentCulture, "{0} is my name", "ram"); } […]

get的真正目的是什么,在c#中设置属性?

可能重复: 属性与方法 C#:公共字段与自动属性 get的真正目的是什么,在c#中设置属性? 我应该什么时候使用get,设置属性…

抽象属性是否会创建私有支持字段?

简单问题:抽象属性是否创建了私有支持字段? 例: public abstract Name { get; set; } 这会创建一个私人支持领域吗? 我想强制任何派生此属性的类使用自己的支持字段,而不是编译器创建的支持字段。

c#regex – 从类文件(.cs)中选择类属性名称,方法名称和字段

我想匹配(从类文件中选择)methodsname,属性名称和字段名称。 这是示例类: class Perl { string _name; public string Name { get; set; } public Perl() { // Assign this._name this._name = “Perl”; // Assign _name _name = “Sam”; // The two forms reference the same field. Console.WriteLine(this._name); Console.WriteLine(_name); } public static string doSomething(string test) { bla test; } } 我得到了方法的代码: (?:public|private|protected)([\s\w]*)\s+(\w+)\s*\(\s*(?:\w+\s+(\w+)\s*,?\s*)+\) 我有问题: 以上正则表达式代码获取所有方法,它工作得很好,但我也希望它选择方法名称,但没有参数和访问器。 所以从exaplmce类使用我的代码结果将是: […]

表达式<Func >作为对象初始化的属性?

我的表达不是很好,我想改进它们所以我想知道是否有人可以解释我是否有可能在类中创建一个属性,可以在实例化期间给出一个值,如下所示: new Column{ ColumnProperty = p => p.Title}; 或者更好(但我认为我在推动它) new Column {ColumnProperty = p => p.Title}; 有这样的类: public class Column { public Expression<Func> ColumnProperty { get; set; } } 它背后的基本思想是我从一堆像这样的Column对象创建一个Grid。 List productList = GetProductsFromDb(); List columnList = new List(); columnList.Add(new Column {ColumnProperty = p => p.ProductId, Heading = “Product Id”}); columnList.Add(new Column {ColumnProperty = p […]

ConditionalAttribute和其他特殊类

ConditionalAttribute可用于根据定义的编译器符号删除对标记方法的调用。 我假设我们不能自己创建这个类,因为编译器必须专门查找它。 我想知道编译器或语言使用的其他类是什么,我们无法自己编码。

如何在打印PDF时设置打印机设置

我正在尝试使用Process对象打印PDF文件。 在某种程度上,我可以成功打印它。 但现在我想设置打印机属性..比如没有副本,纸张大小等。但我没有看到任何属性来设置这些值。 我正在使用以下代码来打印PDF string fileName = “”; string arguments = “”; string verbToUse = “”; int i = 0; ProcessStartInfo startInfo = new ProcessStartInfo(); OpenFileDialog openFileDialog1 = new OpenFileDialog(); openFileDialog1.InitialDirectory = “c:\\”; openFileDialog1.Filter = “pdf files (*.pdf)|*.pdf|All files (*.*)|*.*”; openFileDialog1.FilterIndex = 2; openFileDialog1.RestoreDirectory = true; if (openFileDialog1.ShowDialog() == DialogResult.OK) { if ((fileName = openFileDialog1.FileName) […]

虚拟属性和延迟加载

根据定义,虚拟属性或方法是要被覆盖的子类可见的方法。 但是,例如NHibernate使用虚拟属性来确保延迟加载。 我的问题不是关于NHibernate,而是如何使用虚拟属性来实现延迟加载? 是否有任何关于我不知道的虚拟属性的隐藏行为?

您认为通用属性在.NET中会有用吗?

我不是在讨论声明具有generics参数类型的属性或字段的generics类。 我在谈论可以应用于generics和非generics类的generics属性。 我不是在说这个: public class Base { public T BaseProperty { get; set; } } 我在说这个: public class Base { public T BaseProperty { get { // Insert magic } set { // Insert magic } } } 或这个: public class Base { public T BaseProperty { get { // Insert magic } set { […]