Во-первых, я не хочу использовать базу данных или локальный файл.
Можно ли хранить переменные в памяти, чтобы их не нужно было создавать при каждом вызове веб-службы? Проблема в том, что
FullCompanyListCreateXML();
Создание XDocument занимает около 1 минуты. Так есть ли способ предотвратить сброс переменной xml после завершения вызова веб-службы?
[WebMethod(CacheDuration = 120)]
public String FullCooperationListChunkGet(int part, int chunksize)
{
StringBuilder output_xml = new StringBuilder();
XDocument xml = FullCompanyListCreateXML();
IEnumerable<XElement> xml_query = xml.Root.Elements("Cooperation").Skip(part * chunksize).Take(chunksize);
foreach (XElement x in xml_query)
{
output_xml.Append(x.ToString());
}
output_xml.Insert(0, "<Cooperations>");
output_xml.Append("</Cooperations>");
return output_xml.ToString().Zip();
}
Спасибо
Хенрик