如何从CSHTML页面调用SQL Server 2008存储过程

时间:2013-01-11 18:31:45

标签: asp.net razor webmatrix

从这个问题你可能会发现我并不是很精通。这实际上是我的第一次。

我有一个HTML页面,其中包含要求提供电话号码的表单。当用户点击提交按钮时,它会转到CSHTML页面,该页面通过执行以下操作从表单中获取电话号码:

@{
string pn = Request.Form["pn"]
}

然后它必须使用该值(pn)作为参数调用存储过程。

存储过程名称:sp_AddPNtoDNC

服务器:SqlSrv

用户名:insusr

PW:whatever

请不要假设我知道任何事情!

哦,还有一件事。我是从最近安装的WebMatrix做的所有这些。

感谢。

2 个答案:

答案 0 :(得分:2)

如果您想以“WebMatrix方式”执行此操作,则可以使用数据库帮助程序。

首先,您需要在web.config文件中添加连接字符串。

<configuration>
    <connectionStrings>
        <add name="myConnection" connectionString="Server=myServerAddress;Database=myDataBase;User Id=myUsername;Password=myPassword;" providerName="System.Data.SqlClient" />
    </connectionStrings>
</configuration>

然后在cshtml文件的顶部:

var db = Database.Open("myConnection");
db.Execute("EXEC sp_AddPNtoDNC @0", Request.Form["pn"]);

答案 1 :(得分:0)

conn = new SqlConnection("CONNECTION STRING");
        conn.Open();

        SqlCommand cmd  = new SqlCommand("sp_AddPNtoDNC", conn);

        cmd.CommandType = CommandType.StoredProcedure;

        cmd.Parameters.Add(new SqlParameter("@pn", pn));

        reader = cmd.ExecuteReader();

你可以尝试这样的事情。

我希望这对你有所帮助。