AJAX呼び出しのURLにあるコントローラのパラメータとして文字列を別のビューに渡そうとしています。コントローラで(int?id)を渡すときと同じヌル可能な機能を持たせたいが、その代わりに文字列にしたい。ここに私のコードは次のとおりです。ASP.NET MVC AJAX呼び出しを使用してコントローラに文字列を渡す
別のビュー:
$.ajax({
url: "Save/"+string
}).done(function (data) {
$('body').append('<p>Query was successfully saved to the database.</p>');
});
コントローラー:
public ActionResult Save(string? data)
{
if(data == null)
return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
return View(data);
}
とSave
のためのビューが、私はちょうど渡された文字列を印刷しようとしている、それは事実上何もしています。すなわち、あなたはパラメータの型宣言の後?
を必要としない、
文字列が、彼はそれが必要な場合は、デフォルトのパラメータとして 'Save(string data = string.empty)'を使用することができます –
@JasonRoner文字列はnull可能ではないと言っていたのは、 'Nullable'は ' 'string'は' struct'ではなく 'class'であるため、文' string? 'は無効になります。 'string'の場合は、単純に' null'を渡すことができます。これはしばしばコード内で特別な処理を必要とします。 –
dotnetom
これは私のために働いていない、それはまだ私は 'データ'のために入れた値のためのビューを見つけることを試みている –