嘿伙计们,我有一个问题。我知道经常有人问这样的问题,但我花了几个小时研究解决方案并阅读了很多答案,但我找不到合适的答案。我正在使用 ASP.NET MVC 4 Razor 做一个应用程序。我对这个系统比较陌生。我使用实体框架 5(数据库优先方法)创建了一个 .edmx 数据模型。这是我自动生成的 Context 类的样子:
namespace KSM3.Models
{
using System;
using System.Data.Entity;
using System.Data.Entity.Infrastructure;
using System.Data.Objects;
using System.Data.Objects.DataClasses;
using System.Linq;
public partial class kontrollsystemEntities : DbContext
{
public kontrollsystemEntities()
: base("name=kontrollsystemEntities")
{
}
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
throw new UnintentionalCodeFirstException();
}
[EdmFunction("kontrollsystemEntities", "udf_GetReportsByController")]
public virtual IQueryable<udf_GetReportsByController_Result> udf_GetReportsByController(string controller_account)
{
var controller_accountParameter = controller_account != null ?
new ObjectParameter("controller_account", controller_account) :
new ObjectParameter("controller_account", typeof(string));
return ((IObjectContextAdapter)this).ObjectContext.CreateQuery<udf_GetReportsByController_Result>("[kontrollsystemEntities].[udf_GetReportsByController](@controller_account)", controller_accountParameter);
}
}
}
我的模型类看起来像这样:
namespace KSM3.Models
{
using System;
public partial class udf_GetReportsByController_Result
{
public int ID { get; set; }
public string ProviderID { get; set; }
public int VertragID { get; set; }
public System.DateTime Leistungszeitraum_von { get; set; }
public System.DateTime Leistungszeitraum_bis { get; set; }
public string ReportklasseID { get; set; }
public int Version { get; set; }
public string Status { get; set; }
}
}
当我现在单击“添加控制器”并选择我的类时,我收到错误消息:“无法检索 KSM3.Models.udf_GetReportsByController_Result.cs 的元数据”
注意:我正在使用实体框架从用户定义的函数中检索信息,而不是从表中!如果我在一张桌子上尝试相同的程序,它会起作用!为了完成这项工作,我必须准备或更改什么?谢谢大家的回答!