草庐IT

据集中

全部标签

c# - .net Core amd Roslyn CSharpCompilation,类型 'Object' 在未引用的程序集中定义

我正在尝试将一些.net代码移植到新的Core运行时,但我在移植一些即时编译时遇到了麻烦。继续,它总是要求我提供对System.Runtime和mscorlib的引用,但不知道如何引用它们。附带说明一下,我不能引用Framework4.6,因为该项目必须发布到带有.netCore的Linux机器上。这是最少的代码:stringtestClass=@"usingSystem;namespacetest{publicclasstes{publicstringunescape(stringText){returnUri.UnescapeDataString(Text);}}}";varcom

c# - CaSTLe Windsor 在程序集中找不到安装程序

我的global.axax中有代码:protectedvoidApplication_Start(){WindsorContainer=newWindsorContainer();WindsorContainer.Install(FromAssembly.InDirectory(newAssemblyFilter(AppDomain.CurrentDomain.RelativeSearchPath)));ControllerBuilder.Current.SetControllerFactory(newWindsorControllerFactory(WindsorContainer.

c# - 在数据集中添加数据表

我正在像这样向数据集添加数据表:DataTabledtImage=newDataTable();//someupdatesintheDatatableds.Tables.Add(dtImage);但是下一次,当数据表更新时,它会反射(reflect)在数据集中吗?或者我们需要写一些代码来反射(reflect)出来?此外,我正在检查数据集,如果数据表存在于已使用的数据集中:if(!ds.Tables.Contains("dtImage"))ds.Tables.Add(dtImage);在第一次迭代中,ds.Tables.Contains("dtImage")为假,因此,ds.Tables

c# - asp.net 从数据集中获取单个值

我正在查询以从tbl_message表中获取Title和RespondBY,我想在对转发器进行数据绑定(bind)之前解密Title。如何在进行数据绑定(bind)之前访问标题值。stringMysqlStatement="SELECTTitle,RespondByFROMtbl_messageWHEREtbl_message.MsgID=@MsgID";using(DataServerserver=newDataServer()){MySqlParameter[]param=newMySqlParameter[1];param[0]=newMySqlParameter("@MsgID

C#:如何在尝试从另一个程序集中使用设置变量之前确保其存在?

我有以下内容:usingCommonSettings=MyProject.Commons.Settings;publicclassFoo{publicstaticvoidDoSomething(stringstr){//HowdoImakesurethatthesettingexistsfirst?objectsetting=CommonSettings.Default[str];DoSomethingElse(setting);}} 最佳答案 如果您使用的是SettingsPropertyCollection,您必须自己循环并检查

c# - 从哈希集中获取随机元素?

我使用以下代码将我的文本文件加载到哈希集。HashSethashs=newHashSet(File.ReadLines("textFile.txt"));想知道是否有任何简单的方法可以从中获取随机行?假设textFile.txt包含10行,我想随机化并获取其中一行。 最佳答案 无需每次都枚举整个数组,就可以像公认的那样得到一个简单的答案:privatestaticreadonlyRandomrandom=newRandom();privatestaticreadonlyHashSethashset=newHashSet();...T

c# - 在 2 个 .NET 程序集中使用相同名称和命名空间的类型

出于好奇,我创建了2个程序集,它们都有一个具有完全相同命名空间(Library1)的类(Class1)。然后我创建另一个引用这2个程序集的客户端并尝试创建Class1的实例。毫不奇怪,编译器给我一个关于不明确引用的编译错误。有什么方法可以明确指定我要使用的程序集中的类型以避免歧义?注意:我知道这在实践中很少发生,如果有的话。这只是出于对语言功能的好奇而提出的问题。 最佳答案 我认为你应该使用externalias将程序集命名空间包装在全局命名空间之外。方法如下:在引用2个程序集的项目中,在“引用”下选择其中一个,然后在“属性”窗口中

在未引用的程序集中定义的 C# 类型

我有两个项目A和B。项目A在项目B中使用了类型X,因此我在A中添加了对B的引用。一切都很好。我使用强命名key文件签署了项目B。一切仍然很好。然后我决定更改B的强命名key文件。我重建项目Bok。当我尝试构建项目A时收到错误“错误1​​类型X在未引用的程序集中定义。您必须添加对程序集B的引用,版本=1.0.0.0,文化=中性,PublicKeyToken=95b41b0d6571627b”。"所以我删除了项目A中的引用,然后再次将其添加回去,没有任何乐趣。我可以dbl单击项目A中的项目B引用,打开对象浏览器并在其中查看类型X。我还完全限定了A中的X类型对象,智能感知很好地识别了它们,但

c# - 预定义类型 'System.Threading.Tasks.Task' 在全局别名的多个程序集中定义

我刚刚建立了一个新的asp.netmvc4项目,结合使用最新的.net框架(4.5)和VisualStudio2012。在我添加了一些类、辅助项目等之后。我突然注意到我编译项目时收到5次相同的警告。警告指出:ASPNETCOMPILER:warningCS1685:Thepredefinedtype'System.Threading.Tasks.Task'isdefinedinmultipleassembliesintheglobalalias;usingdefinitionfrom'c:\ProgramFiles(x86)\ReferenceAssemblies\Microsoft\

c# - 在另一个程序集中查找所有嵌入资源

我正在为我的项目进行本地化。为此,我有一个类应该从另一个程序集中加载嵌入式资源,然后读出字符串。但我还需要知道这个程序集包含哪些资源文件。数量和使用的语言是未知的。那么我如何找出这个程序集中的“.resx”文件是如何命名的呢?它们都具有相同的方案:“de-DE.resx”、“en-US.resx”等等。我需要知道这个程序集中包含多少这些文件,以及它们是什么语言。我知道ResourceManager可以访问它们,因此也应该可以通过编程方式访问这些信息...... 最佳答案 您应该使用Assembly类(msdn)中的GetManife