如何通过表连接查看linq提取的表数据?

时间:2011-11-20 20:14:12

标签: asp.net-mvc

如果我加入,我如何查看此类代码?在asp.net mvc上的c#语言

 public ActionResult Details(int id)
        {
            var routeDetails = (from rd in db.Route 
                                join rdd in db.RouteDetail
                                on rd.RouteId equals rdd.RouteId 
                                where rd.RouteId == id 
                                select new
                                        {
                                            RouteId = rd.RouteId,
                                            Name = rd.Name,
                                            Station = rdd.Station,
                                            TimeArrival = rdd.TimeArrival,
                                            TimeDeparture = rdd.TimeDeparture
                                        }).First();
            return View(routeDetails);
        }

我可以查看没有连接的一个表,但是如何连接? 这是我没有加入编辑动作的方式:

<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Main.Master" Inherits="System.Web.Mvc.ViewPage<TrainShedule.Models.Route>" %>

<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
    Edit
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
    <h2>
        Edit</h2>
    <% using (Html.BeginForm())
       {%>
    <%= Html.ValidationSummary(true) %>
    <fieldset>
        <legend>Fields</legend>
        <ul>
            <li>Название маршрута:
                <%= Html.TextBoxFor(m => m.Name) %>
                <%= Html.ValidationMessageFor(m => m.Name)%>
            </li>
        </ul>
        <p>
            <input type="submit" value="Save" />
        </p>
    </fieldset>
    <% } %>
    <div>
        <%= Html.ActionLink("Back to List", "Index") %>
    </div>
</asp:Content>

1 个答案:

答案 0 :(得分:1)

您正在为routeDetails变量创建匿名类型。如果需要强类型视图,可以定义包含两个表所需属性的新模型类(RouteRouteDetail或类似),并选择该类型的实例,而不是使用{选择匿名类型实例{1}}语法。