यहां दी गई लैम्ब्डा अभिव्यक्ति है जिसका उपयोग मैं User
तालिका को आज़माने और शामिल करने के लिए कर रहा हूं, जो एक त्रुटि फेंकता है।व्युत्पन्न मॉडल संबंधित कक्षा
ICollection<Activity> activity = db.Activities
.Include(i => i.Project.ProjectDoc.OfType<Cover>().Select(v => v.User))
.Where(u => u.UserID == WebSecurity.CurrentUserId)
.OrderByDescending(d => d.DateCreated).ToList();
include स्टेटमेंट इस त्रुटि
शामिल पथ अभिव्यक्ति प्रकार पर परिभाषित एक नेविगेशन संपत्ति का उल्लेख करना चाहिए देता है। संदर्भ नेविगेशन गुणों के लिए बिंदीदार पथ का उपयोग करें और संग्रह नेविगेशन गुणों के लिए ऑपरेटर का चयन करें।
प्रश्न में मॉडल
public abstract class ProjectDoc
{
public int ProjectDocID { get; set; }
public int ProjectID { get; set; }
public string DocTitle { get; set; }
public string Status { get; set; }
public string Access { get; set; }
public DateTime DateCreated { get; set; }
public virtual ProjectDocAccess ProjectDocAccess { get; set; }
public virtual Project Project { get; set; }
public virtual ICollection<Comment> Comment { get; set; }
public ICollection<ProjectDocVote> ProjectDocVote { get; set; }
}
public class Segment : ProjectDoc
{
public string Content { get; set; }
}
public class Cover : ProjectDoc
{
public string CoverURL { get; set; }
public int UserID { get; set; }
public User User { get; set; }
}
मैं कैसे प्रकार Cover
की ProjectDoc
के लिए User
तालिका में शामिल हैं?
अद्यतन: उत्तर प्रति जवाब। मैंने इस तरह दिखने के लिए Cover
के लिए मॉडल को अपडेट किया है और इसमें शामिल हैं जिन्हें मैंने कहा था कि त्रुटि उत्पन्न हुई थी। अब मैं डेटा प्राप्त कर सकते हैं:
public class Cover : ProjectDoc
{
public string CoverURL { get; set; }
public int UserID { get; set; }
public virtual User User { get; set; }
}