我有一个EF4.1数据库第一个应用程序,.ToString()方法只给我反射类型and not the SQL query。
如何让我的应用程序以SQL格式显示Linq查询?
我已将C:\Program Files (x86)\Microsoft ADO.NET Entity Framework 4.1\Binaries\EntityFramework.dll
的4.1版添加到我的项目中。我猜测ToString功能是通过扩展方法添加的,但即使我添加“Using system.data.Entity”,我也无法让字符串输出起作用。
这是否意味着ToString仅适用于Code First部署?
public IEnumerable<CompanyDetail> GetAllCompanies(int? startPage, int? stopPage, string Filter, int? MaxResults)
{
var t = from c in _entities.CompanyDetail
select c;
string test = t.ToString();
var t2 = _entities.CompanyDetail;
string test2 = t2.ToString();
return t.ToList();
}
答案 0 :(得分:1)
我可以确认它适用于数据库优先应用程序。
我猜你的代码仍在使用EF 4类,因为你没有提到将EF 4.1 DbContext生成器添加到你的模型中。如果是这种情况,您可以右键单击模型,选择“添加代码生成项...”并选择ADO.NET C#DbContext Generator。如果您在已安装的模板中没有看到它,请在在线模板下查找。