如何在LINQPad中模拟ConfigurationManager

M K*_* II 5 c# linqpad

我正在尝试在LINQPad中测试一些代码.但是,base该类调用Configuration Manager.在LINQPad中进行测试时,如何模拟它.

void Main()
{
    var tRepo = new TestRepository();
    var result = tRepo.GetAsync(1);
    result.Dump();
}

public partial class TestRepository : BaseRepository<Customer>, ICustomerRepository 
{
    // Here base throws the errror
    public TestRepository() : base("DbConnString")
    {            
    }
}
Run Code Online (Sandbox Code Playgroud)

这是BaseRepository的构造函数(来自已编译的DLL,因此在LINQPad中不可编辑):

protected BaseRepository(string connectionStringName)
{
    var connectionString = ConfigurationManager.ConnectionStrings[connectionStringName];

    Connection = new SqlConnection(connectionString.ConnectionString);
    Connection.Open();
}
Run Code Online (Sandbox Code Playgroud)

Sim*_*ice 11

答案可以在LinqPad网站常见问题解答中找到

http://www.linqpad.net/faq.aspx

我正在引用一个从应用程序配置文件(app.config)读取设置的自定义程序集.我应该在哪里放置我的应用程序配置文件,以便LINQPad查询将其获取?

在与LINQPad.exe相同的文件夹中创建名为linqpad.config的文件,并将配置数据放在那里.不要将它与linqpad.exe.config混淆:

•linqpad.exe.config用于LINQPad GUI

•linqpad.config适用于您的查询.

  • 注意,linqpad.config会影响所有查询.最新版本的LinqPad在查询属性(F4)上有一个选项,用于指定自定义app.config的路径,甚至只需粘贴到app.config中. (4认同)