Razor Webmatrix 3使用列表中的参数插入查询

Razor Webmatrix 3使用列表中的参数插入查询,razor,webmatrix,Razor,Webmatrix,我的基本问题是如何获取列表中的选定值并在SQL INSERT语句中使用该值。 我有两张桌子——联系人和问候。当插入一条记录时,会从列表中选择一个问候语MR、Mrs、Dr等。为了方便起见,我只包含了处理此问题的代码。 代码实际上是按原样工作的,但是,我觉得我的解决方案是可疑的。 代码如下:- @{ var Saln=""; <!DOCTYPE html> <html lang="en"> <head> <meta ch

我的基本问题是如何获取列表中的选定值并在SQL INSERT语句中使用该值。 我有两张桌子——联系人和问候。当插入一条记录时,会从列表中选择一个问候语MR、Mrs、Dr等。为了方便起见,我只包含了处理此问题的代码。 代码实际上是按原样工作的,但是,我觉得我的解决方案是可疑的。 代码如下:-

@{
    var Saln="";


<!DOCTYPE html>

<html lang="en">
    <head>
        <meta charset="utf-8" />
        <title></title>
    </head>
    <body>

   <Form  method="post" action="">
   <select name="Choice"> 

 @{      
    var db1 = Database.Open("Contact");
    var selectCommand1 = "SELECT ID, Saln FROM Salutation";
    var selectedData1 = db1.Query(selectCommand1);

    foreach(var row1 in selectedData1)
     {
        <option value="@row1.ID">@row1.Saln</option>
     }
   } 
    </select> 
  @{      
   if (Request["Choice"] != null)
   {
   var  Sal=Request["Choice"];
   var db = Database.Open("Contacts");
   var insertCommand = "INSERT INTO Contacts (Saln) VALUES( "+Request["Choice"]+')';
    db.Execute(insertCommand,Saln );

   }  
  }
  <input type="submit" value="Submit" /> 
  </form>
  </body>
  </html>

变量Sal或@0不被接受。

也许你应该在ASP.NET网页上学习一个很好的教程,比如

无论如何,您的代码可以是:

@{
    var Saln="";
    var db1 = Database.Open("Contact");
    var selectCommand1 = "SELECT ID, Saln FROM Salutation";
    var selectedData1 = db1.Query(selectCommand1);

    if(IsPost)
    {
        if (Request["Choice"] != null)
        {
            var db = Database.Open("Contacts");
            var insertCommand = "INSERT INTO Contacts (Saln) VALUES(@0)";
            db.Execute(insertCommand, Request["Choice"]);
        }
    }            
} 

<!DOCTYPE html>

<html lang="en">
<head>
    <meta charset="utf-8" />
    <title></title>
</head>
<body>

    <Form  method="post" action="">
    <select name="Choice"> 
        @foreach(var row1 in selectedData1)
        {
            <option value="@row1.ID">@row1.Saln</option>
        }
    </select> 
    <input type="submit" value="Submit" /> 
    </form>
</body>
</html>   

我正在阅读一些教程和几本书。到目前为止,我还没有找到一个与你的建议类似的例子。这是非常好的,我非常高兴和感谢您的迅速和最有益的反应。它为我打开了几扇门,也许它也会帮助其他人。你好,吉姆