2016-11-03 24 views
-1

I、SQL Serverの次の文があります。asp.net mvcからSQL Serverの関数を呼び出せますか?

EXEC StoredProcedureName "email", "pinNumber"; 

を、私はASP.NET MVCでの次のメソッドは、C#で書かれている:

name:encryptPinNumber 
input parameter (email,pinNumber) 
return type: string 
return variable: encryptedPinNumber 

は、私はSQL ServerでencryptPinNumberを呼び出し、それを与えることができます電子メール、pinNumber、そのような私のEXECステートメントにencryptedPinNumberを格納?

EXEC StoredProcedureName "email", "encryptedPinNumber"; 
+0

はい、できます。あなたはどうやって尋ねていますか? –

+0

はい、私は方法を知っているように:) – STUDENT

+2

それはかなり広いです。まだ何か試しましたか?それ以外の場合は、ADO.NETを使用してストアドプロシージャを呼び出す方法について、既存の質問がたくさんあります。 –

答えて

0

単純ではない、最もエレガント/効率的な方法は、以下の場合:

private string encryptPinNumber(string email, string pinNumber) 
{ 

    string connectionString = "Data Source=DBServerName;Initial Catalog=DBName;Integrated Security=true;"; 
    var con = new System.Data.SqlClient.SqlConnection(connectionString); 
    var cmd = new System.Data.SqlClient.SqlCommand("StoredProcedureName", con); 
    cmd.CommandType = System.Data.CommandType.StoredProcedure; 
    cmd.Parameters.Add(new System.Data.SqlClient.SqlParameter("@email", email)); 
    cmd.Parameters.Add(new System.Data.SqlClient.SqlParameter("@pinNumber", pinNumber)); 
    con.Open(); 

    string encryptedpinNumber = cmd.ExecuteScalar().ToString(); 
    con.Close(); 

    return encryptedpinNumber; 

} 

しかし、すでに他のユーザーが投稿したリンクを参照してください。

+0

SqlConnectionとSqlCommandはどちらもIDisposableを実装しています。ブロック。その後、手動で接続を閉じる必要はありません。 –

関連する問題