Tag: machine config

用于修改machine.config文件的API – ‘DbProviderFactories’部分每个配置文件只能出现一次

我最近在客户端计算机上遇到以下错误: “DbProviderFactories”部分每个配置文件只能出现一次。 机器配置似乎包含重复的DbProviderFactories元素。 手动删除这个额外的元素可以解决问题,我们的软件可以运行。 但是,有人要求我们尝试通过忽略我们自己的app.config中的重复条目来解决这个问题。 这是因为许多客户端可能有同样的问题,我们无法修改每个人的配置文件。 我已经尝试在system.data部分中添加一个元素,希望覆盖machine.config中已有的内容。 但是,这不起作用。 例如 有没有办法以编程方式忽略重复的DbProviderFactories元素? 是否存在允许您修改机器配置的API? 有人可以帮忙,或推荐一个解决方案? 亲切的问候

获取不同.NET版本的machine.config路径的最佳方法

如果应用程序在.net 4.0上运行,那么获取.net 2.0 machine.config文件路径的最佳方法是什么? 一种方法是进行字符串操作和文件系统访问,以便在new ConfigurationFileMap().MachineConfigFilename;中用v2.0 *替换v4.0 * new ConfigurationFileMap().MachineConfigFilename; 然后将其传递给ConfigurationManager.OpenMappedMachineConfiguration(new ConfigurationFileMap()) 。 如果没有更好的可用性,我将采用这种解决方案。

ClickOnce和C#应用程序的配置

我应该将什么以及如何放入app.config文件中。 方案是这样,我创建了一个C#Windows窗体应用程序( .NET 4.0),它在开发计算机上运行良好。 当我在其他计算机上使用ClickOnce部署它时,我得到了machine.config文件的权限错误。 这是一个公司域,因此我无权更改目标计算机上machine.config文件中的权限。 根据我一直在阅读的内容,我相信在machine.config文件中访问的内容可以替代地放入app.config文件中。 问题是我确实理解了需要放入app.config文件的内容,而我不了解配置的某些方面,例如’keys’等。 我怎样才能完全避免使用machine.config文件,以及究竟需要配置什么呢? 完整错误详情: 平台版本信息 Windows : 5.1.2600.196608 (Win32NT) Common Language Runtime : 4.0.30319.296 System.Deployment.dll : 4.0.30319.1 (RTMRel.030319-0100) clr.dll : 4.0.30319.296 (RTMGDR.030319-2900) dfdll.dll : 4.0.30319.1 (RTMRel.030319-0100) dfshim.dll : 4.0.31106.0 (Main.031106-0000) SOURCES Deployment URL: file:///P:/Eastops/Region%20C/Conie/HHC/HHC.application ERROR SUMMARY Below is a summary of the errors, details of these errors are listed […]

通过代码打开机器/基础Web.Config(64位)

我期待编写代码来打开和编辑机器的基本web.config文件(作为HttpModule安装程序的一部分)。 我想编辑的文件通常位于: C:\ WINDOWS \ Microsoft.NET \框架\ V2.0.50727 \ CONFIG \ web.config中 C:\ WINDOWS \ Microsoft.NET \ Framework64 \ V2.0.50727 \ CONFIG \ web.config中 如果我使用以下代码,我可以打开该文件的32位版本: Configuration configuration = WebConfigurationManager.OpenWebConfiguration(null); 如何打开文件的64位版本? (无论它安装在何处,即使它安装在机器的其他地方)。 更新:有问题的代码是安装程序,它将GAC程序集引用,HttpModule和HttpHandler添加到计算机的基本web.config中。 由于模块设计用于“整个服务器”,因此基本web.config是放置它的最佳位置。 我重申:这不是建议在评论中提出的病毒。 你需要提升以触摸这些文件的事实应该有助于使这个假设成为假。

machine.config appSettings为null

在我的machine.config文件中,我有以下内容 …. 我试图通过使用在asp页面上检索它 ConfigurationManager.AppSettings[“key”]; 并且每次都返回null。

entity framework的连接字符串

我想在Silverlight中的多个实体之间共享相同的数据库信息..但我希望连接字符串被命名为xyz并让每个人都从machine.config访问该连接字符串… 实体的元数据部分将是不同的,因为我没有将实体命名为相同的.. 我可以在该元数据部分放置多个实体吗? 这是一个例子..我想使用这个连接字符串,但请注意我在元数据部分放了多个实体。 基本上我想拿这个连接字符串 而这个连接字符串 制作此连接字符串 但它根本行不通。 这两个项目都无法连接到它。 string encConnection = ConfigurationManager.ConnectionStrings[connectionName].ConnectionString; Type contextType = typeof(test_Entities); object objContext = Activator.CreateInstance(contextType, encConnection); return objContext as test_Entities;