A circular reference was detected while serializing an object of type

При попытке вернуть в Json обьект DataTable, возникла ошибка

A circular reference was detected while serializing an object of type



        public JsonResult Test()
        {
            ADweb.ADwebSoap AD = new ADwebSoapClient();

            DataSet ds = AD.SearchUsers();
            DataTable dt = ds.Tables[0];
            return Json(dt);
        }

Для исправления при использовании EF нужно преобразовать к любому уже имеющемуся типу данных.

        public JsonResult Test()
        {
            ADweb.ADwebSoap AD = new ADwebSoapClient();

            DataSet ds = AD.SearchUsers();
            DataTable dt = ds.Tables[0];
            List<Users> u = new List<Users>();
            Users s = new Users();

            for (int i = 0; i < dt.Rows.Count; i++)
            {
                s.fio = dt.Rows[i][0].ToString();
                s.ad = dt.Rows[i][1].ToString();
                s.mail = dt.Rows[i][2].ToString();
                u.Add(s);
            }

            return Json(u);
        }

Комментарии

Популярные сообщения