質問があります。このような質問が頻繁に寄せられることは知っていますが、解決策に数時間取り組み、多くの回答を読みましたが、適切な回答を見つけることができませんでした. ASP.NET MVC 4 Razor を使用してアプリケーションを実行しています。私はこのシステムにかなり慣れていません。Entity Framework 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);
}
}
}
私のModelクラスは次のようになります。
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 のメタデータを取得できません」というエラー メッセージが表示されます。
注: テーブルからではなく、ユーザー定義関数から情報を取得するために Entity Framework を使用しています。テーブルで同じ手順を試すと、うまくいきます! これを機能させるには、何を準備または変更する必要がありますか? すべての回答に感謝します!