2016-11-09 1 views
0

空白のテーブルストレージに行を追加しようとしています。これは初めての作業ですので、私はMSチュートリアルに従いました。残念ながら、MVCではなくコンソールアプリケーションを使用していましたので、ちょっと即興にしていました。基本的にAddRowメソッドに[httpPost]を追加すると、http 404エラー" 。 '/' でサーバーエラーが発生しましたApplication.Theリソースが見つからない」Cant findメソッド:MVC httppostを使用して空白のテーブルストレージに行を追加する

コード(にHomeController内側):

[HttpPost] 
     public ActionResult AddRow() 
     { 
      ViewBag.Message = "Your application description page."; 

      try 
      { 
       CloudStorageAccount cloudStorageAcc = CloudStorageAccount.Parse(CloudConfigurationManager.GetSetting("StorageConnectionString")); 

       CloudTableClient cloudTableClient = cloudStorageAcc.CreateCloudTableClient(); 

       CloudTable table = cloudTableClient.GetTableReference("Users"); 
       table.CreateIfNotExists(); 

       Insert inserter1 = new Insert("Bob", "Contoso"); 
       inserter1.UserName = "Bobbie"; 

       TableOperation insertOperation = TableOperation.Insert(inserter1); 

       table.Execute(insertOperation); 
      } 
      catch 
      { 
       return View(); 
      } 

      return View(); 
     } 

私はmysite.azurewebsites.net/Home/AddRowことによって、これをアクセスしよう

答えて

0

Whe私たちはブラウザでリクエストを行い、デフォルトのHttpMethodはHttpGetです。関数内で定義されたHttpMethod(Httppost)と一致しません。したがって、それは上記のエラーを返します。私たちは通常、フォームデータをサミットするためにpostメソッドを使用し、その後、ビューページでhttpMethodを定義することができます。

@using (Html.BeginForm("AddRow", "Home", FormMethod.Post)) 
{ 
    // data or logic 
} 

我々はまた、定義されたHTTPMETHODで関数を呼び出すためのコードやツール(郵便配達、fidder)を使用することができます。

あなたがすべてのHTTP要求のために[のPartitionKeyのrowKey]に同じ値を設定しているようです。そうであれば、初めて正しく動作することができます。 [partitionkeyrowkey]はtableEntity(レコード)のユニークなものです。詳細はdocumentを参照してください。

関連する問題