Там какой-либо API должен интегрировать сервер Microsoft Exchange с JAVA-приложением для синхронизации Задачи?

@Jeff - я - определенно не эксперт по этому, но у меня были хорошие результаты с инстанцированием нового контекста почти на каждом вызове. Я думаю, что это подобно созданию нового объекта Соединения на каждом вызове с ADO. Издержки не так плохи, как Вы думали бы, так как организация пула подключений будет все еще использоваться так или иначе.

я просто использую глобального статического помощника как это:

public static class AppData
{
    /// <summary>
    /// Gets a new database context
    /// </summary>
    public static CoreDataContext DB
    {
        get
        {
            var dataContext = new CoreDataContext
            {
                DeferredLoadingEnabled = true
            };
            return dataContext;
        }
    }
}

и затем я делаю что-то вроде этого:

var db = AppData.DB;

var results = from p in db.Posts where p.ID = id select p;

И я сделал бы то же самое для обновлений. Так или иначе у меня нет почти такого же трафика как Вы, но я определенно получал некоторую блокировку, когда я использовал общий DataContext вначале только с горсткой пользователей. Никакие гарантии, но могло бы стоить дать попытку.

Обновление : С другой стороны, смотря на Ваш код, Вы только совместно используете контекст данных в течение времени жизни того конкретного экземпляра контроллера, который в основном кажется прекрасным, если это так или иначе не привыкает одновременно вызовами mutiple в контроллере. В потоке по теме заявил ScottGu:

Контроллеры только живут для единственного запроса - так в конце обработки запроса, они собраны "мусор" (что означает, что DataContext собран)...

Так так или иначе, который не мог бы быть им, но снова это, вероятно, стоит попытки, возможно, в сочетании с некоторым тестированием загрузки.

10
задан Venkat Sadasivam 16 November 2009 в 03:40
поделиться