私はここでかなり新しいので、何か間違ったことをすれば教えてください。 私はWeb開発においてもかなり新しいです。データベースにデータを保存する際の問題SQL SERVER
ここでは、ASP.NETのpostメソッドで問題が発生しています。
ボタンとメソッドの名前は気にしないでください。私はブラジル人で、その名前はすべてポルトガル語です。
AdicionarCliente()というng-click(Angularjs)メソッドを呼び出す送信ボタンがあります。
ビュー
<div>
<input type="submit" class="btn btn-info" value="Salvar" ng-click="AdicionarCliente()"/>
</div>
はJavaScript
myApp.controller('AdicionarClientesController', function ($scope, $http) {
$scope.NomeCliente = "";
$scope.Telefone1Cliente = "";
$scope.AdicionarCliente = function() {
var promisse = $http.post("/app/AdicionarCliente/", { NomeCliente: $scope.NomeCliente, Telefone1Cliente: $scope.Telefone1Cliente })
promisse.then(function() {
window.location.href = "CadastroPet";
return false;
});
};
それはこの部分までよく働きます。私が送信ボタンを押すたびに、変数 "promisse"に関数を入力します。今
- 問題はここにある:
コントローラ
[HttpPost]
public JsonResult AdicionarCliente(string NomeCliente, string Telefone1Cliente)
{
var db = new RexsoftEntities();
db.CLIENTES.Add(new CLIENTES() { NOME = NomeCliente,
TELEFONE1 = Telefone1Cliente});
db.SaveChanges();
var Clientes = db.CLIENTES.ToList();
return Json(Clientes, JsonRequestBehavior.AllowGet);
}
私は送信ボタンをヒットする最初の時間は、ここでのコードは、コードのdb.CLIENTES.Add部分まで行きます - DB.SAVECHANGES()やその他のコードはここでは実行しません。 2回目は魅力のように働きます。問題はちょうど最初の提出ヒットで起こります。
コントローラのリターンが適切に行われないため、JavaScriptコードの最後の部分も実行されません。この部分は
window.location.href = "CadastroPet";
return false;
誰でも手伝ってもらえますか?私は送信ボタンの種類を削除
UPDATE
と簡単なボタンタイプを入れ
(これは
<div ng-controller="AdicionarClientesController">
DIV内のすべてのビューがあります)。それは今働いているようだ。どうすれば私のフォームを提出できますか?
おそらく、データベース挿入が発生したときに何らかの例外が発生しています。 Visual Studioでデバッグすると、実行が中断され、エラーが報告されますか? – ADyson
@ user3127450:投げていると例外/エラーを確認できますか?ここにエラーログを投稿してください。人々が答えられるように! –
@ADysonそうではありません。それは奇妙な部分です。そして、私がデータベースをチェックするとき、値はそこにあります - それでそれは保存されました。 – user3127450