Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/fsharp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Silverlight 如何向CodeFirst POCO添加外键信息以符合RIA服务_Silverlight_Entity Framework 4.1_Ef Code First_Wcf Ria Services - Fatal编程技术网

Silverlight 如何向CodeFirst POCO添加外键信息以符合RIA服务

Silverlight 如何向CodeFirst POCO添加外键信息以符合RIA服务,silverlight,entity-framework-4.1,ef-code-first,wcf-ria-services,Silverlight,Entity Framework 4.1,Ef Code First,Wcf Ria Services,我的两门课如下 public class Client { public Guid Id { get; set; } public String Name{ get; set; } public virtual ICollection<Product> Products{ get; set; } } public class Product { public G

我的两门课如下

    public class Client
    {
        public Guid Id { get; set; }
        public String Name{ get; set; }         
        public virtual ICollection<Product> Products{ get; set; }
    }

    public class Product
    {
        public Guid Id { get; set; }
        public String Model { get; set; }
        public String Version { get; set; }
        [ForeignKey("Client_Id")]
        public virtual Client Client { get; set; }
        [ForeignKey("Client")]
        public Guid? Client_Id { get; set; }

    }
公共类客户端
{
公共Guid Id{get;set;}
公共字符串名称{get;set;}
公共虚拟ICollection产品{get;set;}
}
公共类产品
{
公共Guid Id{get;set;}
公共字符串模型{get;set;}
公共字符串版本{get;set;}
[外国密钥(“客户Id”)]
公共虚拟客户端{get;set;}
[外国钥匙(“客户”)]
公共Guid?客户端Id{get;set;}
}
DbContext类是这样的:

    public class ClientContext : DbContext
    {
        public DbSet<Client> Clients { get; set; }
        public DbSet<Product> Products { get; set; }
    }
公共类ClientContext:DbContext
{
公共数据库集客户端{get;set;}
公共数据库集产品{get;set;}
}
我已经确认,该模型与所有常见CRUD内容的相关数据库一起工作

我在网站上创建了一个RIA DoaminService类,如下所示:

    [EnableClientAccess]
    public class ClientDomainService : DbDomainService<ClientContext>
    {
        public IQueryable<DomainModel.Product> GetProducts()
        {
            return this.DbContext.Controllers;
        }

        public IQueryable<DomainModel.Client> GetClients()
        {
            return this.DbContext.Clients;
        }
    }
[EnableClientAccess]
公共类ClientDomainService:DbDomainService
{
公共IQueryable GetProducts()
{
返回this.DbContext.Controllers;
}
公共IQueryable GetClients()
{
返回this.DbContext.Clients;
}
}
构建silverlight应用程序时,出现以下错误:

无法检索关联的关联信息。。。。只有 支持包含外键信息的型号

我认为添加到产品类的客户机和客户机Id属性中的[ForeignKey]属性将满足“包含外键信息”的要求


我缺少什么?

假设您的代码已完成,您缺少外键关系的另一面。。。主键上的[Key]属性。

假设您的代码已完成,则缺少外键关系的另一面。。。主键上的[Key]属性