Более простой альтернативой для решения этой проблемы является возврат строки и форматирование этой строки в json с помощью JavaScriptSerializer.
public string GetEntityInJson()
{
JavaScriptSerializer j = new JavaScriptSerializer();
var entityList = dataContext.Entitites.Select(x => new { ID = x.ID, AnotherAttribute = x.AnotherAttribute });
return j.Serialize(entityList );
}
Важно, чтобы часть «Выбрать», которая выбирает нужные вам свойства на ваш взгляд. У некоторого объекта есть ссылка для родителя. Если вы не выбираете атрибуты, может появиться круговая ссылка, если вы просто возьмете таблицы в целом.
Не делайте этого:
public string GetEntityInJson()
{
JavaScriptSerializer j = new JavaScriptSerializer();
var entityList = dataContext.Entitites.toList();
return j.Serialize(entityList );
}
Сделайте это, если вам не нужна вся таблица:
public string GetEntityInJson()
{
JavaScriptSerializer j = new JavaScriptSerializer();
var entityList = dataContext.Entitites.Select(x => new { ID = x.ID, AnotherAttribute = x.AnotherAttribute });
return j.Serialize(entityList );
}
Это помогает визуализировать представление с меньшим количеством данных, только с необходимыми атрибутами, и делает ваш веб-сайт более быстрым.
Используйте readlines
, затем используйте seek
и writelines
:
with open('some.txt', 'r+') as f:
text=f.readlines()
f.seek(0)
f.writelines(text[[i for i, s in enumerate(mylist) if '[APP]' in s][0]:])
Ваш файл будет теперь, как и ожидалось, и еще один плюс, что он не делает это по индексу. [ 115]