草庐IT

同一年

全部标签

C# Winforms 设计器无法打开,因为它无法在同一程序集中找到类型

我收到以下错误Couldnotfindtype'My.Special.UserControl'.Pleasemakesurethattheassemblythatcontainsthistypeisreferenced.Ifthistypeisapartofyourdevelopmentproject,makesurethattheprojecthasbeensuccessfullybuiltusingsettingsforyourcurrentplatformorAnyCPU.但是没有任何意义的是My.Special.UserControl与窗体在同一个程序集中。更重要的是,如果我查

c# - 在同一个线程中锁定字典

我有一个函数,它根据键(名称)返回字典中的一个条目,如果它不存在,则返回一个新创建的条目。我的问题是“双锁”:SomeFunction锁定_dictionary,检查键是否存在,然后调用一个也锁定同一个字典的函数,它似乎工作但我不确定是否这种方法存在潜在问题。publicMachineSomeFunction(stringname){lock(_dictionary){if(!_dictionary.ContainsKey(name))returnCreateMachine(name);return_dictionary[name];}}privateMachineCreateMach

c# - Ninject 3 InRequestScope 不为同一请求返回同一实例

最近,我将我的一个MVC3项目从Ninject2升级到Ninject3。在尝试找出InRequestScope不再可用的原因几分钟后,我发现它现在是Ninject.Web.Common的扩展。现在,当我尝试运行该应用程序时,Ninject的工作方式就像所有与范围InRequest绑定(bind)的类型都是InTransientScope一样;每次都会创建一个新实例。在我继承自NinjectModule的类中,我有一个简单的绑定(bind):Bind().ToSelf().InRequestScope();在我的Controller中,我有2个类型为ViewModel.Activity的

c# - 在 C# 中对同一结果进行多个断言的最佳实践

您认为对结果进行多重断言的最简洁方法是什么?过去我对它们进行了相同的测试,但这开始感觉有点脏,我一直在玩另一个使用设置的想法。[TestFixture]publicclassGridControllerTests{protectedreadonlystringRequestedViewId="A1";protectedGridViewModelResult{get;set;}[TestFixtureSetUp]publicvoidGet_UsingStaticSettings_Assign(){vardataRepository=newXmlRepository("test.xml")

c# - 手动设置 operationId 以允许在 Swashbuckle 中使用同一个动词进行多个操作

我需要知道是否可以设置自定义operationid或命名约定,我的意思是我知道可以按照生成operationId的方式覆盖操作过滤器https://azure.microsoft.com/en-us/documentation/articles/app-service-api-dotnet-swashbuckle-customize/usingSwashbuckle.Swagger;usingSystem.Web.Http.Description;namespaceSomething{publicclassMultipleOperationsWithSameVerbFilter:IOp

c# - 同一类型参数的协变和逆变

C#规范指出参数类型不能同时是协变和逆变的。这在创建协变或逆变接口(interface)时很明显,您分别用“out”或“in”修饰类型参数。没有同时允许两者的选项(“outin”)。这种限制仅仅是一种特定于语言的约束,还是基于范畴论的更深层、更根本的原因会让您不希望您的类型既是协变又是逆变的?编辑:我的理解是数组实际上是协变和逆变的。publicclassPet{}publicclassCat:Pet{}publicclassSiamese:Cat{}Cat[]cats=newCat[10];Pet[]pets=newPet[10];Siamese[]siameseCats=newSi

c# - NetFramework 应用程序在同一解决方案中引用 NetFramework 库,在另一个解决方案中引用 NetStandard 库。 : could not load file or assembly

关于从.NETFramework项目中引用.NETStandard类库的问题有很多类似的问题,其中netstandard库中的NuGet包依赖项不会流向netframework应用程序,并且Couldnotloadfileorassembly运行时发生错误:存在许多来源,例如下面的来源,表明可以通过添加对netframework项目缺少的依赖项来解决这个问题:https://stackoverflow.com/a/46015829/2704659然而,这是不利的,因为我不想让项目必须携带它们不应该需要的直接引用;依赖关系应该自然流动,以便将来添加/删除的依赖关系正常工作。其他来源表明可

c# - StreamReader 和 StreamWriter 在同一个 Stream 上?

如何关闭使用相同底层流的StreamReader和StreamWriter?varstream=/*...*/;varreader=newStreamReader(stream);varwriter=newStreamWRiter(stream);我知道我可以简单地忽略关闭读取器/写入器并关闭底层流。然而,这似乎有点hack,因为它是基于这样的假设,即读者/作者没有任何东西可以处理(将来可能不会是这种情况)。我知道这已在.NET4.5中通过额外的构造函数参数得到解决,但在.NET4.5发布之前,我该如何以正确的方式解决它? 最佳答案

c# - 通过接口(interface)在多个集合中引用同一个对象

警告:这个问题使用类比角色扮演游戏作为例子。假设我正在使用C#制作我梦寐以求的角色扮演游戏。当玩家进入战斗时,会出现某种战场,其中包含与战斗相关的每个元素的引用,例如战场上的各种对手和可用元素。现在所有这些元素都有一个但几个角色:例如,盟友(通过直接继承成为战士)能够在战场上移动、发出命令或成为敌人的目标。现在那把巨大的石中剑在战斗中也有一些作用。显然它不能移动也不能发出命令,但它仍然可以被瞄准,并且它可以(希望)被抬起或使用。所有这些行为在我的代码中都由接口(interface)表示,因此无论实现它的对象是什么,都可以使用具有相同行为的所有对象。代码示例:publicclassAll

c# - 为什么我不能在同一个类上使用 WCF DataContract 和 ISerializable?

我有一个类需要能够序列化为SQLServersession变量并可通过WCF服务使用。我声明如下namespaceMyNM{[Serializable][DataContract(Name="Foo",Namespace="http://www.mydomain.co.uk")]publicclassFoo:IEntity,ISafeCopy{[DataMember(Order=0)]publicvirtualGuidId{get;set;}[DataMember(Order=1)]publicvirtualstringa{get;set;}DataMember(Order=2)]pu