客户端正在从服务中检索元数据。这个电话成功了。
但是调用entityManager.CreateEntity(); 失败了。
错误是:
“EntityType 上尚未定义 KeyProperties:'Customer:#MyCommerceServer.Models'。请通过调用 FetchMetadata 或在为此类型创建 EntityKey 之前显式更新 KeyProperties 来确保此类型的元数据是完整的。”}
但是以下通过异常表示客户已分离。
var customerType = entityManager.MetadataStore.GetEntityType(typeof(Customer));
var customer = customerType .CreateEntity();
这是我的设置。Customer实体有一个名为Id的键。客户端上的Customer实体也具有相同的密钥。客户端和服务器上的实体存在于同一个命名空间中。
是否需要添加任何设置才能拥有客户实体 KeyProperties?我在 ToDo 示例项目中也看到了同样的问题。
******** 2014 年 8 月 12 日更新
在服务器上:
namespace MyCommerceServer.Models
{
public class Customer
{
public int Id { get; set; }
}
}
在客户端:
namespace MyCommerceServer.Models
{
public class Customer : BaseEntity
{
public int Id
{
get { return GetValue<int>(); }
set { SetValue(value); }
}
}
}