使用ADO.NET连接到SQL Server存储过程

cle*_*hoi 0 c# sql sql-server ado.net typeinitializeexception

目前我正在制作一个程序,我想连接到数据库.

我想知道如何使用ADO.NET概念连接数据库.

我生成的步骤很少.请按照以下步骤操作.

  1. 生成ValidateModel.edmx(ADO.NET).

    • 已连接MS SQL服务器已完全键入ID和密码.
  2. 生成Windows应用程序表单并尝试调用.

任何人都知道如何连接到SQL Server或某些命令.

我已经尝试连接以使用Microsoft.Practices.EnterpriseLibrary.

但是在创建数据库时会有异常.

private string dbInstance = "testEntities";

try
{
   Database db = DatabaseFactory.CreateDatabase(dbInstance);
   DbCommand dbCommand = db.GetStoredProcCommand("GetUserNameByUserId");
   db.AddInParameter(dbCommand, "@UserId", DbType.String, sPIN);
   db.AddOutParameter(dbCommand, "@UserName", DbType.String, 30); //sTechnicianName
   sTechnicianName = db.ExecuteScalar(dbCommand).ToString();
}
Run Code Online (Sandbox Code Playgroud)

并具有TypeInitializationException.

App.Config中的testEntities信息设置.

小智 5

以下是使用SqlConnection的示例:

int result; 

using (SqlConnection conn = new SqlConnection("hereYourConnectionString"))
{
    conn.Open();
    using (SqlCommand cmd = new SqlCommand("StoredProcedureName", conn))
    {
        cmd.CommandType = CommandType.StoredProcedure;

        // input parameters 
        cmd.Parameters.Add(new SqlParameter("@paramName", paramValue));

        // output parameters
        SqlParameter retval = cmd.Parameters.Add("@returnValue", SqlDbType.Int); // assiming that the return type is an int
        retval.Direction = ParameterDirection.ReturnValue;

       cmd.ExecuteNonQuery();
       result = (int)cmd.Parameters["@returnValue"].Value; // assuming is an int
    }               
}
Run Code Online (Sandbox Code Playgroud)

但请务必检查数据提供程序工厂模型