背景
我在visual studio 2010中使用MVC 3.我编辑了当您打开Internet App模板时出现的默认Web应用程序。我故意使用旧的和传统的ado.net和sql查询方法。我知道先进的技术已经存在,但稍后会使用。
问题
我在视图中制作了三个文本框。它将值传递给Controller,然后Controller将其发送到Model以插入数据库,但PROBLEM是该变量不从Web.Config连接字符串也不直接获取连接字符串。在调试期间,它显示为null。为什么?
查看:
@using (Html.BeginForm("register","Home", FormMethod.Post, new {id="submitForm"}))
{
<div>
<i>@Html.Label("Name:")</i>
@Html.TextBox("txtboxName")
</div>
<div>
<i>@Html.Label("Email:")</i>
@Html.TextBox("txtboxEmail")
</div>
<div>
<i>@Html.Label("Password:")</i>
@Html.Password("txtboxPassword")
</div>
<div>
<button type="submit" id="btnSubmit" name="Command" value="Submit">Submit</button>
</div>
}
控制器:
[HttpPost]
public ActionResult register(string command, FormCollection formData)
{
if (command == "Submit")
{
var name = formData["txtboxName"];
var email = formData["txtboxEmail"];
var pwd = formData["txtboxPassword"];
database db = new database();
db.connectDB(name, email, pwd);
ViewBag.Message = email;
}
return View();
}
型号:
namespace LoginSys.Models
{
public class database
{
public void connectDB(String name, String email, String pwd)
{
String conStr = "Data Source=HUNAIN-PC;Initial Catalog=registration;User ID=sa;Password=abc123!@#";
}
}
}
字符串conStr 保持为空,但除此之外,该方法需要参数等。请帮我这个方法。我稍后会用另一个。它在web.config中也不起作用 - 我的意思是我将它保存在web.config中,从那里访问它但它仍然是null。
发布结果: 当我将连接字符串作为参数从控制器传递给connectDB方法而不是直接工作时,雅虎现在正在工作。
为什么?这是现在的新问题。