Linq не работает нормально, не получает никаких данных в Ajax My Linq Query - PullRequest
0 голосов
/ 28 ноября 2018

У меня есть две таблицы, одна из которых «Вопросы», а вторая «SurveyQuestion»

Questions has four column ID , Text, QuestionType, Options

и

SurveyQuestion has four column ID, SuerveyID , QuestionID, OrderID

У меня есть идентификатор опроса, теперь пытающийся использовать LINQ и получить все значенияиз таблицы вопросов,

Мой метод вызова из Ajax находится в контроллере, то есть

public ActionResult Index(string prefix)
{
    List<SelectList> Questions = new List<SelectList>();

    //  Here "MyDatabaseEntities " is dbContext, which is created at time of model creation.
    SurveyAppEntities ObjectSur = new SurveyAppEntities();
    // Questions = ObjectSur.Surveys.Where(a => a.ID.Equals(prefix)).toToList();

    var e = from q in ObjectSur.Questions
            join b in ObjectSur.SurveyQuestions on q.ID equals b.QuestionID
            where b.SurveyID.Equals(prefix)
            select q;
    return Json(e, JsonRequestBehavior.AllowGet);
}

Ajax Cal, и этот метод, возвращающий данные, работает нормально, потому что я пытался просто передать строку и послеизменяя эту строку, я получаю предупреждение ajax, но при использовании этого linq не посылаю никакого результата

Надежды на ваши предложения

Ajax Call:

    function MyFunction() {
        alert($('#DDlSurvey').val());
        $.ajax({
            url: "@Url.Action("Index", "ConductSurvey")",
            data: { prefix: $('#DDlSurvey').val() },
            type: "POST",
            dataType: "json",
            success: function (data) {
                //  loadData(data);
                alert(data)
                alert("Success");
            },
            error: function () {
                alert("Failed! Please try again.");
            }
        });
        //$('#YourLabelId').val('ReplaceWithThisValue');
    }

1 Ответ

0 голосов
/ 29 ноября 2018

Надеюсь, это вам поможет.

 var e = (from q in ObjectSur.Questions
        join b in ObjectSur.SurveyQuestions on q.ID equals b.QuestionID
        where b.SurveyID.Equals(prefix)
        select q).ToList()
...