SubSonic而不是默认连接字符串问题

时间:2009-11-19 19:56:20

标签: subsonic subsonic3

我在程序中遇到错误,因为SubSonic3在

中返回带有默认连接字符串的记录
SingleOrDefault(ByVal expression As System.Linq.Expressions.Expression(Of System.Func(Of Company.filter, Boolean)), ByVal connectionString As String, ByVal providerName As String)

在Subsonic源中,Database.cs第323行:

instance = Activator.CreateInstance<T>();

我认为这是我案件中的问题原因。它使用默认构造函数创建实例,然后将其作为结果返回,这就是我们松散自定义连接字符串的地方。

我个人修复了它,在SingleOrDefault函数中添加了2行ActiveRecord.tt模板,它有connectionString参数:

            single._db=new <#=Namespace#>.<#=DatabaseName#>DB(connectionString, providerName);
            single._repo = new SubSonicRepository<<#=tbl.ClassName#>>(single._db); 

但我认为你应该更深入地研究这个问题,Rob:)

1 个答案:

答案 0 :(得分:0)

我不跟随。您指定ConnectionString的名称是Settings.tt - 这是我们使用的名称。