2012-11-20 84 views
1

我正在創建一個新的博客網站,其中條目存儲在SQL Server數據庫中。我現在遇到的問題是將我的主頁鏈接到SQL Server。我以前設法將程序連接到數據庫。現在我試圖使用相同的代碼到asp.net mvc 3網站。將asp.net連接到SQL Server並在主頁上顯示結果

這個類我保存在文件夾模型中。

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
using System.Data.SqlClient; 

namespace testingtesting.se.Models 
{ 
    public class msSQL 
    { 
     public SqlDataReader postList() 
     { 
      string connectionString = "Server=;Database=;User Id=;Password= "; 
      SqlConnection con = new SqlConnection(connectionString); 
      con.Open(); 
      SqlCommand com = new SqlCommand("SELECT * FROM Post", con); 
      SqlDataReader reader = com.ExecuteReader(); 
      return reader; 
     } 
    } 
} 

我是新來的asp.net MVC 3,但如果我理解正確的一切,在模型類文件夾發送和接收數據庫中的數據,而控制器將數據發送到我試圖做的觀點現在。到目前爲止,我試圖通過控制器將postList方法的結果發送到視圖,然後以簡潔的方式顯示它。但我無法讓它工作。

回答

0

所以,你的控制器可能類似於:

public ActionResult Index() 
{ 
    msSQL mssql = new msSQL(); 
    return View(mssql.postList()); 
} 

而且你的觀點可能是這樣的:

@model SqlDataReader 

@while(Model.read()) 
{ 
    Model["columnName"] 
} 

然而,最好的做法是創建一個代表你正試圖將數據模型從數據庫中拉出,填充模型,並將該模型傳遞給視圖,而不是將SqlDataReader傳遞給視圖。

如果這沒有幫助,請發佈你正在得到的錯誤/爲什麼它不工作。