2016-12-08 2 views
2

Привет моих данных в формате JSON структуру как этогоКак массовое обновление в dapper из json struct?

{ 
    "Imei": 356980051541947, 
    "sendIds": [ 
    { 
     "Id": 13014 
    }, 
    { 
     "Id": 13190 
    }, 
    { 
     "Id": 13419 
    }, 
    { 
     "Id": 13422 
    } 
    ], 
    "ApplicationVersion": 68, 
    "GoogleId": "asdsadazxcjkh218", 
    "ImagesVersion": "123:1" 
} 

Моего класс:

public class PostData 
{ 
    public int ApplicationVersion; 
    public long Imei; 
    public string GoogleId; 
    public string FromDate; 
    public string ToDate; 
    public string ImagesVersion; 
    public ItemId[] SendIds; 
} 

public class ItemId 
{ 
    public int Id; 
} 

C# код щеголеватого обновление:

const string sql = "UPDATE dbo.SentMessage SET IsDelivered=1 WHERE [email protected]"; 
dapperConn.Execute(sql, postData.SendIds); 

Но следующая ошибка возникает, когда выполнить

Должен объявить скалярную переменную \ "@ Id \

Пожалуйста, помогите мне.

ответ

2

Это исключение произошло потому, что ваши переменные в ваших классах - Field, а не Property. Поэтому вы должны изменить его на такие свойства, как приведенные ниже коды:

public class PostData 
{ 
    public int ApplicationVersion { get; set; }; 
    public long Imei { get; set; }; 
    public string GoogleId { get; set; }; 
    public string FromDate { get; set; }; 
    public string ToDate { get; set; }; 
    public string ImagesVersion { get; set; }; 
    public ItemId[] SendIds { get; set; }; 
} 

public class ItemId 
{ 
    public int Id { get; set; }; 
} 
Смежные вопросы