草庐IT

dll-interface

全部标签

c# - NuGet 包的相关 DLL 未复制到输出文件夹

我创建的自定义Nuget包出现问题。我们称它为MyCompany.Library.nupkg。它托管在企业ArtifactoryNuget存储库中。这个包依赖于Newtonsoft.Json。出于某种原因,如果我引用使用该Nuget包的项目,则相关DLL不会复制到我的项目的输出文件夹中。奇怪的是,当我使用另一个包(例如,Moq,而不是我自己的包)时,相关的DLL被复制。我已经创建了重现问题的测试解决方案:解决方案引用测试:项目:SomeLib.dll;引用:MyCompany.LibraryNupkg(取决于Newtonsoft.Json,所以也添加了)MoqNupkg(取决于CaST

c# - Task.Start .NET CORE 无法加载 DLL combase.dll 错误 Windows 7

我们有一些代码利用了基本的C#Task对象。但是,在Windows7计算机上进行开发时,尝试运行Task.Start();会导致:Exceptionthrown:'System.DllNotFoundException'inSystem.Private.CoreLib.ni.dllAdditionalInformation:UnabletoloadDLL'combase.dll':thespecifiedmodulecouldnotbefound(ExceptionfromHRESULT:0x8007007E)在Windows10开发机器上运行此代码时一切正常。在研究适用于Window

c# - 固有实现的接口(interface)

我经常想创建一个对象列表,其中每个对象都必须实现多个接口(interface)。例如,我想做类似于以下的事情:ListwhereT:IConvertible,IComparable_myList;我考虑的另一个选择是创建第三个接口(interface)来实现这两个接口(interface),这样任何实现这两个接口(interface)的对象都可以内在地实现我的接口(interface)。publicinterfaceIConvertibleAndComparable:IConvertible,IComparable{}List_myList;有了这个,我将能够添加任何同时实现了ICon

c# - 如何在 dll 级别读取 app.config。?

这个问题在这里已经有了答案:C#DLLconfigfile(17个答案)关闭5年前。我在一个解决方案中有一个控制台应用程序项目和一个库项目(dll)。库项目有app.config文件,我在其中存储了我在库中使用的一些键值对。控制台应用程序引用此dll。我在控制台应用程序中有另一个app.config文件,我在其中设置了控制台应用程序。当我运行程序时,我的library.dll总是从控制台应用程序引用app.config。我想分离每个dll的职责,所以我希望dll始终引用其自己的app.config文件,而不是调用应用程序的文件。在这种情况下,library.dll应该使用其自己的app

c# - 是否可以使用 MVC 项目制作单独的 dll?

我们有一个用Asp.netMVC5开发的大项目。我们的模型和业务逻辑在单独的类库中定义。现在我们需要向现有项目添加另一个模块,但我们需要一个单独的dll。该模块还共享最多的javascripts、css文件和其他文件。这就是我们不想分离MVC项目的原因。有什么我们可以为模块基础创建单独的dll的原因吗?所以我们不想部署或接触其他dll。 最佳答案 根据您的描述,您说这些项目共享CSS和JS文件。这使我相信您正在谈论一个单独的MVC网站(可能是大型公司网站的一部分)。使用区域可以最简单。如果您不熟悉区域,请阅读以下内容:https:/

c# - 方法声明的返回类型应该是接口(interface)还是具体类?

在一般情况下,接口(interface)或抽象类通常是合适的决定,对吗?但在某些情况下,具体类看起来更好。例如,publicstringReplace(stringold,stringnew)String的Replace方法返回一个具体类。(这只是一个例子,虽然String没有实现任何接口(interface)。)我的问题是什么时候返回接口(interface),什么时候返回具体类?它是返回接口(interface)的程序的一部分,而不是实现吗? 最佳答案 视情况而定。这个问题我已经看过好几次了,这里有一个很好的例子来说明“视情况而

c# - ASP.NET MVC3 中的 Razor 和接口(interface)继承 : why can't this property be found?

我在ASP.NETMVC3应用程序中的一个RazorView有一个奇怪的问题。当我将其值写入调试器控制台时,该属性似乎确实存在,但我收到一条错误消息,告诉我无法找到该属性。我的View将一个名为FormEditViewModel的类作为其模型。FormEditViewModel有一个IForm类型的属性,一个继承自另一个接口(interface)IFormObject的接口(interface)。IFormObject定义了一个属性Name,因此任何实现IForm的东西都必须实现一个名为Name的属性。具体类型Form实现接口(interface)IForm并根据需要定义Name属性。

c# - 如何将 .tlb 作为资源文件嵌入到 .NET 程序集 DLL 中?

我们通过COM(CCW)在nativeC++中使用我们的.NET程序集DLL。每当我制作我的DLL的新版本时,我必须将两个文件(.dll和相应的.tlb)发送给在他们的代码中使用它的工作人员。是否可以将.tlb文件作为资源嵌入到.NETDLL文件中? 最佳答案 使用VisualStudio.NET执行此操作并不十分简单,但可以完成。在基本层面上,您需要做的是:生成您的TLB文件,例如“YourLibrary.tlb”。使用文本编辑器(例如记事本或VisualStudio中的文件/新建/文件.../文本文件)创建一个名为“YourLi

c# - 使用 JSON.net 序列化时忽略接口(interface)中定义的属性

我有一个具有如下属性的接口(interface):publicinterfaceIFoo{//...[JsonIgnore]stringSecretProperty{get;}//...}我希望在序列化所有实现类时忽略SecretProperty。但似乎我必须在属性的每个实现上定义JsonIgnore属性。有没有一种方法可以实现这一点而不必向每个实现添加JsonIgnore属性?我没有找到任何对我有帮助的序列化程序设置。 最佳答案 经过一番搜索,我发现了这个问题:Howtoinherittheattributefrominterfa

c# - 使用 LINQ for Entity Framework 将实体转换为通用方法中的已实现接口(interface)

我有一个通用方法来查询EF中TEntity类型的对象。如果TEntity实现特定接口(interface),我想将条件添加为where子句。我的方法是:publicTEntityGetByUserID(GuiduserID){varquery=this.DbSet;if(typeof(TEntity).IsImplementationOf()){query=query.Where((x=>!((IDeletableEntity)x).IsDeleted);}returnquery.FirstOrDefault(x=>x.UserID==userID);}IsImplementation