ably ably برای هدایت شدن به سایت جدید اینجا کلیک کنید

آموزش برنامه نویسی

آموزش برنامه نویسی وب، اندروید، ویندوز , اسکیوال و...
Tell: 0912 097 5516
| Email: Hello@EduOnline.ir

۱ مطلب با کلمه‌ی کلیدی «Can only specify query options» ثبت شده است

استفاده از یک تابع کنترلر در View

بسم الله الرحمن الرحیم

طبیعتا شما تمامی توابع خود را کلاس های Common  نمی نویسید و مکن است بخواهید یک تابع ساده را که در Controller نوشته شده است در یک view استفاده کنید. برای استفاده از توابع در View  می توانید به صورت زیر عمل کنید:

تابع زیر در کنترلر نوشته شده است:

public int getClientID(string login)

    {
        var context = new MyEntity(new Uri("host/MyWCF.svc/"));

        var userID = from persons in context.PERSON
                     where persons.LOGIN == login
                     select persons.USER_ID;

        int uID = userID.First();
        var cli = from client in context.CLIENT
                  where client.USER_ID == uID
                  select client.CLIENT_ID;
        int cliID = cli.First();
        return cliID;
    }


می توان این تابع را به صورت زیر فراخوانی کرد اما با Error  مواجه خواهید شد

Client : @{ ((HomeController)(this.ViewContext.Controller)).getClientID(User.Identity.Name); }

خطایی که پس از اجرای این دستور دریافت می کنید به صورت زیر است:

Can only specify query options (orderby, where, take, skip) after last navigation

At line int uID = userID.First();

راه ساده ای که قبلا نیز شما از آن حتما استفاده کرده اید به صورت زیر است:

@Html.Action("Home","getClientID", new {login=User.Identity.Name})

up
ما را در گوگل محبوب کنید