Tag: class

用于计算class级计数的部分语法

我需要计算正确的C#源文件中的类数。 我写了下面的语法: grammar CSharpClassGrammar; options { language=CSharp2; } @parser::namespace { CSharpClassGrammar.Generated } @lexer::namespace { CSharpClassGrammar.Generated } @header { using System; using System.Collections.Generic; } @members { private List _classCollector = new List(); public List ClassCollector { get { return _classCollector; } } } /*—————————————————————— * PARSER RULES *——————————————————————*/ csfile : class_declaration* EOF ; class_declaration : (ACCESSLEVEL […]

类型约束

我有以下类层次结构。 class Header { IEnumerable Item { get; set; } …. } class HeaderA : Header { …. } // Item should have the type of IEnumerable class HeaderB : Header { …. } // Item should have the type of IEnumerable class Item { …. } class ItemA : Item { …. } class […]

从c#中的函数返回类

我可以从c#中的函数返回类对象作为返回值而不是返回字符串或int或..etc

程序集中的类顺序

是什么决定了大会中class级的顺序? 并且……有没有办法改变它? 附加信息:您可以通过自己反思来检查订购,或者您可以使用ILDASM之类的工具,禁用字母排序,然后您也可以获得订单。 顺序似乎是由编译器决定的奇怪方式。 我已经尝试了一些东西……比如重命名类(顺序保持不变),还编辑.csproj文件来改变.cs文件的顺序。 我的主要关注点是VS2008,C#,。net 3.5。 更新:我确实有一个场景,订单很重要(外部程序通过reflection通过我的assembly) – 我需要特殊订单。 除此之外 – 你是完全正确的 – 订单真的不应该紧。

类变量的默认值

今天我在这个网站上看到了答案。 MVC ViewModel – 对象引用未设置为对象的实例 我对实例化类的默认值感到困惑。 当我们使用“new”关键字创建新类时,其字段的值会自动设置为默认值。 例如,整数变为0,字符串变为null。 列表怎么样? List 为什么我们没有List的新实例属于instanced对象?

ProtoBuf.net序列化派生类时不包括基类属性

使用最新的2.0 beta版ProtoBuf.net我试图序列化派生类(只是示例),我得到空文件。 为什么基类属性没有序列化? [ProtoContract] [Serializable] public class Web2PdfClient : Web2PdfEntity { } [ProtoContract] [Serializable] public class Web2PdfEntity : EngineEntity { [ProtoMember(1)] public string Title { get; set; } [ProtoMember(2)] public string CUrl { get; set; } [ProtoMember(3)] public string FileName { get; set; } } [ProtoContract] [Serializable] public class EngineEntity { public bool Result { […]

加载程序集后执行的C#方法

我写了一些C#类库,我想使用Ninject为我的类提供dependency injection。 类库是否有可能声明一些代码(方法),这些代码(方法)将在加载类库时每次执行。 我需要这个来定义Ninject的绑定。

C#如何在类中使用get,set和use enums

我有一个程序,我使用类存储设置。 我需要它来使用set和get函数来更改和存储设置。 我试过这个,但我没有让它发挥作用。 任何人都可以帮我这个吗? private enum _Difficulty { Easy, Normal, Hard }; public void SetDifficulty(Difficulty) { _Difficulty = Difficulty; } public enum GetDifficulty() { return _Difficulty; } 有没有办法在get和set的类中使用enums ? 我还需要bool和int 。

从C#中的另一个类访问方法

我在Classes文件中有许多类,我希望它们都能够访问相同的全局方法来保存重复的代码。 问题是,我似乎无法从我的文件中的另一个类访问一个方法 – 任何想法? 所以我的class1.cs布局类似于: public class Job1 { public Job1() { } } public class Methods { public static void Method1() { //Want to access method here from Job1 } }

没有main方法的C#类

我正在学习C#而且我对它很新,请原谅我这个看似愚蠢的问题。 我有一些Java经验,我注意到C#程序在主类中也需要一个main()方法。 如果我想创建一个不是主类的类,即我导入主类的类,该怎么办? 我试图这样做,当我编译(通过cmd使用csc File.cs )时,编译器说它将生成的.exe没有main()方法。 这是否意味着我错了, 每个类都需要一个main()方法,或者我错误地编译它? 也许是代码中的问题(因为我依赖于我对Java语法的了解),看起来像这样: public class Class { int stuff; public Class(int stuff) { this.stuff = stuff; stuff(); } public void method() { stuff(); } } 编辑:我担心这是非常误解的。 我不是在问这个文件是否需要一个main方法,我问我怎样才能把这个类导入到另一个类中,因为我意识到如果我这样做我就不能有一个main(就像我说的那样,我有一些Java经验),但每当我尝试编译没有一个编译器告诉我,我需要一个。