ASP.NET WEB API を使用しています。
データベースjsonstringを受け取って追加したい。
私のモデル:
namespace sms.Models
{
[JsonObject]
public class MySMS
{
//[JsonProperty("id")]
//public int Id { get; set; }
[JsonProperty("name")]
public string Name { get; set; }
[JsonProperty("fromnumber")]
public string FromNumber { get; set; }
[JsonProperty("tonumber")]
public string ToNumber { get; set; }
[JsonProperty("text")]
public string Text { get; set; }
}
}
SMS コントローラ:
public void Post(JObject singleSMS)
{
MySMS smska = singleSMS.ToObject<MySMS>();
try
{
SMS_Repository.Add(smska);
}
catch (Exception)
{
throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.NotImplemented));
}
}
およびリポジトリからのメソッド:
public static void Add(MySMS singleSMS)
{
DataClasses1DataContext db = new DataClasses1DataContext();
SimpleSMS newSMS = new SimpleSMS();
newSMS.Name = singleSMS.Name;
newSMS.Text = singleSMS.Text;
newSMS.FromNumber = singleSMS.FromNumber;
newSMS.ToNumber = singleSMS.ToNumber;
db.SimpleSMS.InsertOnSubmit(newSMS);
db.SubmitChanges();
}
ここで、次のように Fiddler から POST リクエストを送信すると:
ローカルホスト:25856/api/SMS
リクエスト本文:
{"name":"name", "tonumber":"1", "fromnumber":"2", "text":"text"}
ここにnull参照例外があります:
MySMS smska = singleSMS.ToObject<MySMS>();
スムスカはnull
。
私の間違いは何ですか?