错误:
An unhandled exception of type ‘Microsoft.WindowsAzure.Storage.StorageException’ occurred in Microsoft.windowsAzure.Storage.dll
Additional information: A primitive value was specifIEd; however,a value of the non-primitive type ” was expected.
我的模型通过使用tableServiceContext添加,更新,删除,保存的存储库进入表存储.
我按照这种模式为我的模型:
[System.Data.Services.Common.DataServiceKey(new string[] { "PartitionKey","RowKey" })]public class PersisteDalert : Alert,ItableEntity{ public string PartitionKey { get { return this.StudentID; } set { this.StudentID = value; } } public string RowKey { get { return this.ID; } set { this.ID = value; } } public DateTime Timestamp { get; set; } public new int Type { get; set; } //hIDes Enum type in Alert base class}
在升级过程中,我需要将所有引用换成
System.Data.Services.*
对于
Microsoft.Data.Services.*
…除OData库外.
内部有什么变化使我的模式不再有效吗?
解决方法 由于网上没有任何关于此错误的内容,而且这几乎是它所讨论的唯一地方,即使我的上下文与您的上下文不同,我也会添加一个解决方案.错误是完全一样的,所以我猜它起源于同一个地方.对我来说,这是一个导致问题的继承主键.序列化实体的主键必须是自然的而不是重写.如果Class具有ID属性,则DerivedClass还必须将ID属性声明为“new”,或者必须将ID属性从Class移动到DerivedClass.
这里有更多细节:http://jerther.blogspot.ca/2014/12/aspnet-odata-v4-primitive-value-was.html
我确实认为这是一个错误而不是限制,因为继承的密钥与Entity Framework和Fluent API非常兼容.
我希望这有助于节省一些头发.
总结以上是内存溢出为你收集整理的c# – Azure存储客户端v4.1 – 期望非基本类型的值全部内容,希望文章能够帮你解决c# – Azure存储客户端v4.1 – 期望非基本类型的值所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)