我想制作一个将blob上传到azure存储的示例应用。我跟着this和this,两种方式都抛出了我MobileServiceInvalidOperationException
500 - 内部服务器错误。请尽快给我解决方案。感谢。
这是错误日志
插入错误: {AlbumId:22,
名称:'ff',
描述:'ff', ThumbnailUrl:null,
ThumbnailFileName: '73a594b1-1abb-476d-a1ce-73a12d6ee278_thumbnail.png', ImageUrl:null, FileName:'73a594b1-1abb-476d-a1ce-73a12d6ee278.png', IMAGEURL: 'https://xxxxxxx.blob.core.windows.net/mypictures-undefined/undefined?se=2013-02-07T10%3A44%3A57Z&sr=b&sp=w&sig=qDBnnVOyo8XCNSUNJcn49IMcN4laDIgjZ8oM9TdiHBI%3D', thumbnailurl: 'https://xxxxxxx.blob.core.windows.net/mypictures-undefined/undefined?se=2013-02-07T10%3A44%3A57Z&sr=b&sp=w&sig=qDBnnVOyo8XCNSUNJcn49IMcN4laDIgjZ8oM9TdiHBI%3D' }
{
[错误:[Microsoft] [SQL Server Native Client 10.0] [SQL 服务器]列名称'ImageUrl'在。中多次指定 INSERT的SET子句或列列表。无法分配列 同一条款中的多个值。修改该子句以确保 列只更新一次。如果此声明更新或 将列插入视图中,列别名可以隐藏 你的代码重复。] sqlstate:'42000',代码:264
}
答案 0 :(得分:5)
您在同一个(JavaScript)对象上有两个属性因案例而异,但其背后的Windows Azure SQL数据库实例在列名称方面不区分大小写。
您的C#类似乎包含一个名为ImageUrl
的属性(注意案例),然后在您的表的插入脚本中(每the reference you quoted),您正在执行item.imageurl
小写。
你可以将DataMember属性添加到C#属性中,我怀疑你没问题。
[DataMember(Name = "imageurl")]
public String ImageUrl { get; set; }
ThumbnailUrl
答案 1 :(得分:0)
我用this article的引用解决了这个问题。一个建议,如果你想要一个上传blob到Azure的演示,请访问该链接,不要在MSDN sample浪费你的时间。