我在程序中遇到错误,因为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:)
答案 0 :(得分:0)
我不跟随。您指定ConnectionString的名称是Settings.tt - 这是我们使用的名称。