使用t4从另一个程序集中读取web.config

时间:2010-01-31 12:18:05

标签: asp.net class t4 helper connection-string

是否有人有一个很好的示例或帮助程序类,允许我从驻留在Web应用程序引用的另一个程序集中的T4模板中读取Web应用程序中的连接字符串。我正在从它引用的数据库中生成一些代码,我会在如何获取此用途的连接字符串方面提供一些帮助。 香港专业教育学院阅读George Js示例here但是只有当模板驻留在网络应用程序中时才有效,请帮助!!!

3 个答案:

答案 0 :(得分:4)

var path = Host.ResolvePath(@"../Web.config");  
var map = new ExeConfigurationFileMap { ExeConfigFilename = path };           
var config =  ConfigurationManager.OpenMappedExeConfiguration(
                                            map,ConfigurationUserLevel.None);  
var appSettings = config.AppSettings;  
var connectionStrings = config.ConnectionStrings.ConnectionStrings;

答案 1 :(得分:1)

您可以尝试做类似的事情:

var config = ConfigurationManager.OpenExeConfiguration("../somePathTo/web.config")
// use the config to get values like: config.AppSettings

答案 2 :(得分:0)

经过一番搜索后,我发现我在t4中的答案可以使用

path = Host.ResolvePath(relativeFileName)