سؤال

أنا أدعو الطريقة التالية في جهاز التحكم الخاص بي باستخدام $ .getjson ()

    [return: JSONReturnBinder]
    public object ProfileFields()
    {
        var userfields = _profileSvc.GetFields(282);
        var fields = from f in userfields
                     select new {f.ID, f.FieldName};

        return fields;
    }

تعود My _Profilesvc إلى بيانات إضافية لا أحتاج إليها (في الواقع أحصل على أخطاء أحذية لأن الجلسة مغلقة).

هل هناك طريقة أفضل للقيام بماذا أقوم به؟ هل يجب علي كتابة البيانات التي أعود بها أو أن هذا النهج كافيا؟

شكرًا.

نصائح أخرى

هل حاولت بالفعل استخدام

[return: JSONReturnBinder(Properties = "ID,FieldName")]
public object ProfileFields()
{
        var userfields = _profileSvc.GetFields(282);
    return userfields;
}

آمل أن يساعد هذا.

أولا، أود أن أغير قيمة الإرجاع للعمل ليكون إيليست ...

أعتقد أن هذه الجلسة مغلقة خطأ قد تنبع من التنفيذ المتأخر ل "حقول فار". إذا قمت بتغيير عبارة عودتك إلى الحقول .التوليست ()، والتي ستجبر تنفيذ تعبير LambDA وقد تتخلص من خطأ الجلسة:

[return: JSONReturnBinder]
    public object ProfileFields()
    {
            var userfields = _profileSvc.GetFields(282);
            var fields = from f in userfields
                         select new {f.ID, f.FieldName};

    return fields.ToList();
    }
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top