Однофайловый ASPX и LINQ - PullRequest
       37

Однофайловый ASPX и LINQ

3 голосов
/ 19 августа 2010

есть система CMS и есть страница aspx без бэкэнд-файла. Я могу добавить серверный код прямо в .aspx, завернутый в тег <script language="C#" runat="server">. Но компилятор генерирует ошибку, потому что я использую LINQ в своем коде, и у меня нигде нет оператора using System.Linq;. И я не могу добавить использование внутри .aspx файла (ошибка снова). Что мне делать?

<%@ Page Inherits="MyPage" MasterPageFile="~/Master.master" %>
<script language="C#" runat="server">
[System.Web.Services.WebMethod]
public static List<string> GetA()
{
    MyDataContext db = new MyDataContext();

    var result = from a in db.A
                 select a;

    return result.ToList();

}
</script>

Ответы [ 2 ]

12 голосов
/ 19 августа 2010

Добавить

<%@ Import Namespace = "System.Linq" %>

Над кодом должен работать.

итоговый код должен выглядеть так:

<%@ Page Inherits="MyPage" MasterPageFile="~/Master.master" %>
<%@ Import Namespace = "System.Linq" %>
<script language="C#" runat="server">
[System.Web.Services.WebMethod]
public static List<string> GetA()
{
    MyDataContext db = new MyDataContext();

    var result = from a in db.A
                 select a;

    return result.ToList();

}
</script>
3 голосов
/ 19 августа 2010

Вам необходимо добавить пространство имен LINQ.Вы используете декларацию import.

<%@ Page Inherits="MyPage" MasterPageFile="~/Master.master" %>
<%@ Import Namespace="System.Data.Linq" %>
<script language="C#" runat="server">
...
...