Effort Framework無法識別實體模型架構

c# effort entity-framework-5 sybase-ase unit-testing

我有一個Sybase ASE數據庫的實體模型,我正在嘗試使用Effort Framework為它創建單元測試。我可以在我的主項目和單元測試項目中使用實體模型訪問數據庫,但是當嘗試使用Effort創建內存數據庫時,我得到一個例外。

單元測試項目中的問題代碼

public SetUpShims()
{
     string connString = System.Configuration.ConfigurationManager.ConnectionStrings["CoPathDataContext"].ConnectionString;
     MyDbContext context;
     // CreateTransient throws exception
     EntityConnection conn = Effort.EntityConnectionFactory.CreateTransient(connString);

     context = new Data.CoPathDataContext(conn);

}

異常詳細信息:(System.Data.MetadataException)

public SetUpShims()
{
     string connString = System.Configuration.ConfigurationManager.ConnectionStrings["CoPathDataContext"].ConnectionString;
     MyDbContext context;
     // CreateTransient throws exception
     EntityConnection conn = Effort.EntityConnectionFactory.CreateTransient(connString);

     context = new Data.CoPathDataContext(conn);

}

堆棧跟踪

public SetUpShims()
{
     string connString = System.Configuration.ConfigurationManager.ConnectionStrings["CoPathDataContext"].ConnectionString;
     MyDbContext context;
     // CreateTransient throws exception
     EntityConnection conn = Effort.EntityConnectionFactory.CreateTransient(connString);

     context = new Data.CoPathDataContext(conn);

}

在查看Entity創建的.csdl和.ssdl文件後,我相信我發現了導致問題的字段。

SSDL

public SetUpShims()
{
     string connString = System.Configuration.ConfigurationManager.ConnectionStrings["CoPathDataContext"].ConnectionString;
     MyDbContext context;
     // CreateTransient throws exception
     EntityConnection conn = Effort.EntityConnectionFactory.CreateTransient(connString);

     context = new Data.CoPathDataContext(conn);

}

CSDL

public SetUpShims()
{
     string connString = System.Configuration.ConfigurationManager.ConnectionStrings["CoPathDataContext"].ConnectionString;
     MyDbContext context;
     // CreateTransient throws exception
     EntityConnection conn = Effort.EntityConnectionFactory.CreateTransient(connString);

     context = new Data.CoPathDataContext(conn);

}

我嘗試從SSDL字段中刪除Precision屬性,但我仍然收到相同的錯誤。 (即使它確實有效,當模型重新生成時,更改可能不會持久)

有關導致異常的原因以及我應該如何解決的任何想法?

熱門答案

如果你還沒有這樣做,將MySQL服務器升級到5.6+已添加,那麼更新你所有的日期,日期時間,時間......用with選項的0-6 in()




許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因
許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因