我是MVC的新手,来自一家经典的ASP商店。我们习惯于编写自己的SQL选择来将信息提取到我们的asp页面中。我试图在MVC中找到类似的方法,我在asp.net mvc and sql queries找到了一个我想要遵循的例子。
我想我理解其中大部分内容但是我对以下内容感到不满: //将数据转换为字符串[]并将其返回..
有人可以为我扩展这个或者给我其他例子吗?
我想要完成的是从表中提取数据并在我的视图中创建树视图。
class MainPageViewModel
{
//this data is from a different table.
//and goes on the left of the page
public string Categories {get; set;}
//this data is also from a different table.
//and goes on the center of the page
public List<Products> Products {get; set;}
}
控制器:
public class HomeController : Controller
{
// GET: /Home/
public ActionResult Index()
{
MainPageViewModel vm = new MainPageViewModel();
vm.Categories = GetCategories();
//use the GetProducts() to get your products and add them.
vm.Products.Add(...);
return View(vm); //pass it into the page
}
string[] GetCategories()
{
DataTable data = GetDataFromQuery("SELECT * FROM Categories WHERE..");
//convert the data into a string[] and return it..
}
//maybe it has to return something else instead of string[]?
string[] GetProducts()
{
DataTable data = GetDataFromQuery("SELECT * FROM Products WHERE..");
//convert the data into a string[] and return it..
}
DataTable GetDataFromQuery(string query)
{
SqlDataAdapter adap =
new SqlDataAdapter(query, "<your connection string>");
DataTable data = new DataTable();
adap.Fill(data);
return data;
}
}
答案 0 :(得分:1)
你没有写sql代码。你可以使用Linq to Sql轻松实现。只需将linq解决方案添加到sql类中。然后添加数据库,即可连接数据库而无需sql代码。