我有一个WinForms应用程序,只需.exe文件即可轻松部署。它使用框架2.0,因此默认情况下它不能在Windows8上运行。如果我包含一个具有以下参数的.config文件,它在W8上工作正常:但是,现在我必须部署两个文件,这是NotAcceptable。我可以做些什么来将这些参数“嵌入”到exe本身中吗?我尝试过使用WinZip自解压器,但它也不是一个选项,因为我无法自定义它的界面。 最佳答案 .NET可执行文件包含一小段native代码,旨在将适当的CLR版本加载到进程中。加载程序调用shim(MSCOREE.DLL,.NET
是否可以在app.config文件中添加条件?我在C#代码中执行以下操作,我也想在我的app.config文件中执行类似的操作。#if(Debug).......#else.....#endif 最佳答案 您可以像这样尝试某种类型的app.config转换:http://fknut.blogspot.com/2009/11/appconfig-transformation-with-new.html.或者有多个app.config文件,例如app.config.debug和app.config.release,并在你的构建。
我的解决方案中有两个项目,对于这个例子,我将它们称为项目A和B。项目B引用A。项目B可以访问项目A的app.config属性吗?我想访问A的app.config中的应用程序key字符串。stringtfsUri=ConfigurationManager.AppSettings["TfsUri"]; 最佳答案 这通常不是一个好主意,因为您在项目之间引入了硬依赖关系。因此,如果您可以复制粘贴配置值,这将使您的项目独立(但是,这会引入配置值的重复)。您也可以自动执行此操作,以便在构建项目时自动解析配置依赖性。话虽如此,还有其他选择,在每种
我正在开发一个简单的类库项目,它将给我一个dll。我想从配置文件中读取一个特定的值。所以我在我的项目中添加了一个App.config文件。上面是我的App.config文件,现在我尝试按如下方式读取它stringstrVal=System.Configuration.ConfigurationManager.AppSettings["serviceUrl"];但是我的字符串变量没有得到任何值。我以类似的方式为Web应用程序完成了此操作并且成功了。但不知何故,我无法使它正常工作。首先在类库项目中使用App.config的想法是否正确? 最佳答案
我一直在寻找如何验证base64字符串并遇到了这个问题。^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$我需要一些帮助来让它允许“==”和“=”。谢谢 最佳答案 这应该表现得非常好。privatestaticreadonlyHashSet_base64Characters=newHashSet(){'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T'
我是c#中配置部分的新手我想在配置文件中创建一个自定义部分。谷歌搜索后我尝试过的内容如下配置文件:自定义部分.csnamespaceCustomSectionTest{publicclassCustomSection:ConfigurationSection{[ConfigurationProperty("key",DefaultValue="Default",IsRequired=true)][StringValidator(InvalidCharacters="~!@#$%^&*()[]{}/;'\"|\\",MinLength=1,MaxLength=60)]publicStri
如何在app.config中包含数组或列表之类的信息?我希望用户能够放置尽可能多的IP(或根据需要)。我的程序将只接受app.config中指定的任何内容。如何做到这一点?publicstringip=ConfigurationManager.AppSettings["ip"]; 最佳答案 最简单的方法是在App.config文件中使用逗号分隔列表。当然,您可以编写自己的配置部分,但如果它只是一个字符串数组,那么这样做有什么意义呢,保持简单。publicstring[]ipArray=ConfigurationManager.App
我很想知道C#中this和base对象之间的区别。使用它们时的最佳做法是什么? 最佳答案 thisbase表示当前类实例parent。使用示例:publicclassParent{publicvirtualvoidFoo(){}}publicclassChild:Parent{//callconstructorinthecurrenttypepublicChild():this("abc"){}publicChild(stringid){}publicoverridevoidFoo(){//callparentmethodbase.
我想获得一个logFilePath值,该值是我通过硬编码输入到appSettings中的。我试图通过达到关键值System.Configuration.ConfigurationrootWebConfig1=System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration(null);System.Configuration.KeyValueConfigurationElementcustomSetting=rootWebConfig1.AppSettings.Settings["azureLogUrl"];st
我在特定的DLL中使用Nlog进行日志记录。然后在另一个应用程序中使用该DLL(使用System.Reflection.Assembly.LoadFrom(path+a.dll)动态加载它)。我手动将Nlog.dll和Nlog.config文件放在Path文件夹中,应用程序可以正常执行,但不会记录任何消息。但是,当我继续将Nlog.config文件手动放入应用程序目录(\bin\debug\)时,会记录消息。谁能告诉我如何将Nlog.Config的搜索位置指向不同于\bin\debug\的目录(d:\dev)。 最佳答案 下面是我如