日期:2014-05-20  浏览次数:20867 次

linq + mvc开发模式的问题
如果我有两张表,一张用户表(Users),一张状态表(State)表,用户Id与状态Id是主外键关系。如果我想实现对用户信息的增、删、改、查(查询所有(分页),按状态或者用户的Id去查询),用linq + mvc开发模式去实现该怎么做了,请各位牛人帮帮忙,因为我是初学者,可不可以请各位帮忙写一个下例子呢?我将感激涕零......

------解决方案--------------------
Linq to SQL 提供了对其进行增、删、改、查的方法。你可以查MSDN
与其他实现MVC模式一样,只是LINQ TO SQL 的返回结果要注意,LINQ查出来的结果存在于表当中,像DATASET一样,读取时要用foreach。


------解决方案--------------------
LINQ查出来的结果存在于表当中,像DATASET一样?
晕啊 。


------解决方案--------------------

参考下:


http://www.cnblogs.com/lyj/archive/2008/01/28/1056133.html
------解决方案--------------------
给你个例子:

mvcGridView类
C# code
using System; 
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.UI.WebControls;

namespace Web
{
  public class mvcGridView:GridView
  {
    public string Key
    { get; set; }

    public ViewPage ViewPage
    { get { return this.Page as ViewPage; } }

    protected override void OnLoad(EventArgs e)
    {
      this.DataSource = this.ViewPage.ViewData[this.Key]; //得到数据源
      this.DataBind();  //绑定  这样就不用手动写N个绑定了
      base.OnLoad(e);
    }
  }
}


view:
HTML code
 <%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage" %> 

<%@ Register assembly="Web" namespace="Web" tagprefix="cc1" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
  <title> </title>
  <link href="../../Content/css/main.css" rel="stylesheet" type="text/css" />
  <script src="../../Scripts/jquery-1.3.2-vsdoc2.js" type="text/javascript"> </script>
  <script type="text/javascript" >
  function DelCustomer(CustomerID) {
    if (confirm("确定删除吗?")) {
      $.ajax({
        type: "get",
        dataType: "html",
        url: "/Home/DelCustomer/" + CustomerID,
        success: function(msg) {
            if (msg == "成功") {
              alert("删除成功!");
              window.location.reload();
            }
        },
        error: function(XMLHttpRequest, textStatus, errorThrown) {
          alert("删除失败!\n信息:" + errorThrown + "," + textStatus + "\n");
        }
      })
  }
  }
</script>
</head>
<body>
  <form id="form1" runat="server">
  <div>
    <cc1:mvcGridView ID="MvcGridView1" Key="Customers" AutoGenerateColumns="False"  runat="server">