3
我有以下代碼:的Web API的OData 2 EDM異常
public class AwardTitle
{
public int AwardTitleId
{
get;
set;
}
public int? EpisodeId
{
get;
set;
}
public virtual AwardEpisode Episode
{
get;
set;
}
}
public class AwardEpisode
{
public int EpisodeId
{
get;
set;
}
}
public static class WebApiConfig
{
public static void Register(HttpConfiguration config)
{
config.Routes.MapODataRoute("ODataRoute", "api", GetImplicitEDM());
}
}
private static Microsoft.Data.Edm.IEdmModel GetImplicitEDM()
{
var builder = new ODataConventionModelBuilder();
builder.EntitySet<AwardTitle>("AwardTitles");
return builder.GetEdmModel();
}
通知我如何只繪製了AwardTitle
類......不是AwardEpisode
類。
現在,當我瀏覽到控制器時,我希望得到一個關於沒有映射的AwardEpisode
的錯誤。但是,沒有錯誤。實際上,除了AwardTitle
正在檢索... AwardEpisode
也正在被檢索...沒有任何明確的電話這樣做。
這怎麼可能?這應該是可能的?
我使用ASP.Net的Web API 2在Windows 7
我敢打賭,EDM發生器使用反射隱遁地創造所有的依賴類。也許有一個設置告訴模板生成器忽略一個類。 – 2014-11-06 21:43:45
這是通過這種方式設計的。 – vittore 2014-11-06 21:48:10
vitore,我不認爲它是由設計。每隔一段時間我實現控制器,除非我使用$ expand專門請求它們,否則不包含相關類 – Chris 2014-11-07 00:43:02