在 Razor 函数中获取数据引用数据

Get Data Reference Data In Razor Function

我有三种全局数据类型 旅游 酒店 航空公司

我创建了一个 Razor 功能来显示包含相关酒店和航空公司信息的旅游 但是我无法在我的函数中获取航空公司和酒店数据这是代码:

    @foreach (var Tour in Data.Get<Countries.Tour>())
{
     @Tour.Airline.Name 
    <img src='~/media(@Tour.Thumb)'  />
}

@Tour.Airline.Name 无效 我无法保存功能 @Tour.Airline 都只输出航空公司 Guid 而不是航空公司名称。

那你推荐什么?使用 xslt 功能?或者创建辅助函数来传递航空公司 Guid 并取回 airlone 数据,我认为这会使系统有点复杂。

C1 数据层将 return "a flat structure" 由简单字段(字符串、整数、guid 等)组成,而不是深层对象结构。

您需要加入航空公司类型,如下所示:

var myList = from tour in Data.Get<Countries.Tour>()
join airline in Data.Get<Countries.Airline>() on tour.Airline equals airline.Id
select new { airline.Name, tour.Thumb};

@foreach (var element in myList)
{
     @element.Name 
    <img src='~/media(@element.Thumb)'  />
}

参见 What is the syntax for an inner join in LINQ to SQL?