草庐IT

INTERFACE

全部标签

C# POCO T4 模板,生成接口(interface)?

有谁知道任何可以生成接口(interface)和类的POCOT4模板的调整版本?即,如果我在.edmx文件中有Movie和Actor实体,我需要获取以下类和接口(interface)。interfaceIMovie{stringMovieName{get;set;}ICollectionActors{get;set;}//insteadofICollection}classMovie:IMovie{stringMovieName{get;set;}ICollectionActors{get;set;}//insteadofICollection}interfaceIActor{stri

c# - 不在接口(interface)中的类方法

我有一个简单的C#问题(我相信)。我是该语言的初学者,遇到了有关实现它们的接口(interface)和类的问题。问题是我有接口(interface)iAinterfaceiA{boolmethod1boolmethod2boolmethod3}和实现该接口(interface)的3个类:类B、C和DclassB:iA{publicboolmethod1publicboolmethod2publicboolmethod3}如果类B有另一个不在接口(interface)中的方法,假设method4()并且我有以下内容:iAelement=newB();然后我会使用:element.meth

c# - 关于 Juval Lowy 的 IDesign C# 编码标准的问题

就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引起辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter为指导。8年前关闭。我们正在尝试使用IDesignC#Codingstandard.不幸的是,我没有找到全面的文档来解释它给出的所有规则,而且他的书并不总是有帮助。以下是我留下的Unresolved问题(来自第2章,编码实践):第26条:避免为枚举提供显式值,除非它们是2的整数幂第34号:始终使用for循环显式初始化引用类型数组第50名:避免事件作为接口(interface)成

c# - 常见数据结构的引用单元测试?

我正在编写一个类库,其中包含常见数据结构(列表、集合、字典...)的几个专门实现。我发现自己总是一遍又一遍地编写相同的单元测试,而且我不确定我没有忘记测试一些重要的场景。由于我的类都实现了标准接口(interface)(IList、IDictionary等),我想知道是否存在这些接口(interface)的所有实现都应该通过的某种“引用”单元测试。当然,我还需要测试我的类的特定方面,但至少我会更有信心,我的标准接口(interface)实现没有任何问题。 最佳答案 你可以看看MonounittestsonGithub-那里至少有Di

c# - 为什么具有 "where T : class"约束的 Generic<T> 方法接受接口(interface)

我有这个interface:publicinterfaceITestInterface{intTestInt{get;set;}}和这个通用方法(带有T:class约束):publicvoidTest()whereT:class{//DoSomething}这个电话:Test();一切都编译并运行,同时interface不是class(或者是吗?)。为什么会这样?我第一次看到这个是在我的WCF代理类上:publicpartialclassTestServiceClient:System.ServiceModel.ClientBase,TestNamespace.ITestService

c# - 通用接口(interface)重载。有效术语?

这是一个非常基本的方法重载示例,两个方法具有相同的名称但具有不同的签名:intMyMethod(inta)intMyMethod(inta,stringb)现在假设我定义了两个通用接口(interface),共享完全相同的名称但具有不同数量的类型参数,例如:IMyInterfaceIMyInterface我可以说这代表“通用接口(interface)重载”吗?还是“重载”一词仅适用于这种情况下的方法?它看起来仍然与方法重载非常相似,因为我们保持完全相同的名称但改变了参数。如果我不能说“通用接口(interface)重载/重载”,那么对于这两个共享相同名称的不同接口(interface)

c# - 接口(interface)继承多个接口(interface) : how is this handled by a C# compiler?

最近我发现C#允许Aninterfacecaninheritfromoneormorebaseinterfaces.例如,Caliburn.Micro中的IScreen在http://caliburnmicro.codeplex.com/SourceControl/latest#src/Caliburn.Micro/IScreen.cs中执行此操作namespaceCaliburn.Micro{publicinterfaceIScreen:IHaveDisplayName,IActivate,IDeactivate,IGuardClose,INotifyPropertyChangedE

c# - Quartz.Net 的 IJobFactory 接口(interface)中 ReturnJob 的目的是什么

我正在使用simpleInjector作为IOC容器,但我不清楚ReturnJob的责任是什么,我想知道我该如何继续?这是我到目前为止完成的代码:publicclassSimpleInjectorJobFactory:IJobFactory{privatereadonlyContainer_container;publicSimpleInjectorJobFactory(){_container=newContainer();}publicIJobNewJob(TriggerFiredBundlebundle,ISchedulerscheduler){return_container.

c# - 为什么必须显式实现此接口(interface)?

几年后回到C#,所以我有点生疏了。遇到这个(简化的)代码,它让我摸不着头脑。为什么必须显式实现IDataItem.Children属性(property)?不正常Children属性满足要求?毕竟属性是直接用来满足的。为什么不是隐含的?publicinterfaceIDataItem{IEnumerableChildren{get;}}publicclassDataItem:IDataItem{publicCollectionChildren{get;}=newCollection();//Whydoesn't'Children'aboveimplementthisautomatica

C# 编译器无法识别正在实现接口(interface)的类

以下代码无法编译(使用VS2010),我不明白为什么。编译器应该能够推断出List与IEnumerable兼容(抱歉找不到更好的词),但不知何故它没有。我在这里缺少什么?interfaceITest{voidTest();}classTestClass:ITest{publicvoidTest(){}}classProgram{staticvoidTest(IEnumerabletests){foreach(vartintests){Console.WriteLine(t);}}staticvoidMain(string[]args){varlst=newList();Test(lst