我们客户的生产环境中的安全策略要求我们使用单独的连接来执行写入和读取数据库。我们决定使用SubSonic生成DAL。所以我有兴趣知道它是否可能,如果是,如何?

有帮助吗?

解决方案

您可以指定SubSonic在运行时使用的提供程序。因此,在从数据库加载时指定读取提供程序(使用读取连接字符串),然后在要保存时指定写入提供程序(使用write connectionstring)。

以下内容未经过测试,但我认为它应该为您提供一般性的想法:

        SqlQuery query = new Select()
            .From<Contact>();

        query.ProviderName = Databases.ReadProvider;

        ContactCollection contacts = query.ExecuteAsCollection<ContactCollection>();
        contacts[0].FirstName = "John";
        contacts.ProviderName = Databases.WriteProvider;
        contacts.SaveAll();
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top