私には2つの方法があり、http動詞によって区別されます。
public class ProductImageController : Controller
{
[HttpGet]
public ViewResult Create(int productId)
{
return View(productId);
}
[HttpPost]
public ViewResult Create(int productId)
{
}
}
しかし、エラーが発生します:
同じパラメータタイプで「作成」と呼ばれるメンバーをすでに定義しています
同じスコープ内に同じシグネチャを持つ複数のメソッド、つまり同じ戻り値の型とパラメータ型を含めることはできません。
編集-これを使用する必要があるようです: 関連する質問
public class ProductImageController : Controller
{
[HttpGet]
public ViewResult Create(int productId)
{
return View(productId);
}
[HttpPost]
[ActionName("Create")]
public ViewResult CreatePost(int productId)
{
//return a View() somewhere in here
}
}
アクション後の方法を次のように変更します。
[HttpPost]
public ViewResult Create(FormCollection formValues)
{
var productId = formValues["productId"];
}
OR
[HttpPost]
public ViewResult Create(int productId, FormCollection formValues)
{
//still using productId, formValues is just an additional parameter
//that doesn't need to be implemented.
}