看起來breeze未能在服務器返回的元數據中包含一些屬性。我在客戶端使用breeze.js,而在服務器上使用breeze-EF而無需進一步配置。這是我的目標Breeze.js:返回的服務器元數據中缺少屬性
[Table("COEP")]
public class COEP : DataObject
{
public string ID { get; set; }
[Required]
public string COEMID { get; set; }
[Required]
public string COJPID { get; set; }
[Required]
public string CORGID { get; set; }
[Required]
public string CODPID { get; set; }
[Required]
public short? COEPISMAIN { get; set; }
DateTime? STARTDATE { get; set; }
DateTime? ENDDATE { get; set; }
[JsonIgnore]
public virtual COEM COEM { get; set; }
}
這裏是從與呼叫服務器返回的元數據的一部分:xxxController.GetMetadata()(我只是把關於目標COEP的部分)
{「name」:「COEP」,「customannotation:ClrType」:「StampDev.Pro.v3.server.EndPoints.Comp.Data.COEP,StampDev.Pro.v3,Version = 1.0.0.0,Culture =中性,PublicKeyToken = null「, 」key「:{」propertyRef「:{」name「:」ID「}}, 「property」:[ {「name」:「ID」,「type」:「Edm.String」,「maxLength」:「128」,「fixedLength」:「false」,「unicode」:「true 「,」nullable「:」false「}, {」name「:」COEMID「,」type「:」Edm.String「,」maxLength「:」128「,」fixedLength「:」false「 unicode「:」true「,」nullable「:」false「}, {」name「:」COJPID「,」type「:」Edm.String「,」maxLength「:」Max「,」fixedLength「: 「false」,「unicode」:「true」,「nullable」:「false」}, {「name」:「CORGID」,「type」:「Edm.String」,「maxLength」:「Max」 ,「fixedLength」:「false」,「unicode」:「true」,「nullable」:「false」}, {「name」:「CODPID」,「type」:「Edm.String」,「maxLengt h「:」Max「,」fixedLength「:」false「,」unicode「:」true「,」nullable「:」false「}, {」name「:」COEPISMAIN「,」type「 .Int16「,」nullable「:」false「}] 」navigationProperty「:{」name「:」COEM「,」relationship「:」Self.COEM_COEP「,」fromRole「:」COEM_COEP_Target「,」toRole「 COEM_COEP_Source「}}
您可以清楚地看到屬性」STARTDATE「和」ENDDATE「(可空的日期時間)沒有包括在內。
這些屬性未用[NotMapped]屬性標記。它們應該包含在元數據中。我不能在這裏發生什麼問題。這些屬性是我的MS SQL數據庫中表中的字段。
奇怪的是我有STARTDATE日期時間屬性的其他對象,它們正確返回元數據中。關於更多的事情:對象「COEP」是 主子女關係的第二級子女,其中COEP是二級子女。任何幫助,任何暗示什麼可能出錯將非常感激。謝謝
非常感謝@ward。我很匆忙,在最後期限之後,我沒有看到它。還需要和短?是一個錯誤(複製粘貼...) – TheSoul