Конфигурация / Настройки для Microsoft CRM 2011 Form Silverlight Control - PullRequest
1 голос
/ 28 июля 2011

Нужна идея наилучшей практики в поиске решения.

Мы рассматриваем разработку элементов управления Silverlight для форм CRM, которые должны будут ссылаться на общий файл конфигурации для данных. Это файл, который необходимо периодически обновлять. Мы не хотим жестко кодировать значения в элементе управления Silverlight.

У меня вопрос ... Где / Что / Как мы предоставляем файл конфигурации для элемента управления Silverlight?

Я попытался загрузить веб-ресурс JS, представляющий собой массив JSON, полный настроек, к которым я пытался получить доступ из элемента управления Silverlight. Все, что я получил, были ошибки разрешения, когда я использовал и учетную запись администратора и мою учетную запись домена, чтобы получить Http-файл и проанализировать его. Может ли кто-нибудь подтвердить, что это может сработать, если мне удастся справиться с этими надоедливыми ошибками разрешения?

Моей следующей мыслью было создание объекта CRM с настройками, на которые элемент управления Silverlight мог бы выполнять вызовы ODATA для получения своих данных конфигурации. Я не на 100% продан по этой идее.

Возможно, есть другой способ, которым люди использовали - если так - я бы хотел видеть, что вы делаете. Это действительно может помешать нам прийти к обогащенному Silverlight решению, к которому мы стремимся.

Заранее спасибо

Ответы [ 2 ]

2 голосов
/ 29 июля 2011

Мы делаем это двумя способами.

  1. У нас есть объект конфигурации для параметров, которые могут быть изменены на сайте клиента их администратором.
  2. Для других данных конфигурации, которые вряд ли будут изменены, мы устанавливаем веб-ресурс XML. Этот метод означает, что мы можем хранить много данных, не создавая и не управляя сложными объектами (или связями, если требуется). Если он установлен как неуправляемый / настраиваемый веб-ресурс, текстовый редактор можно использовать для внесения изменений, хотя помните, что эти изменения не должны нарушать схему / синтаксис XML.

Этот XML-ресурс можно получить в Silverlight с помощью WebClient.DownloadStringAsync (), как показано ниже.

private void GetXmlConfiguration(string resourceName)
{
    var webClient = new WebClient();
    webClient.DownloadStringCompleted += OnGetConfigurationXmlCompleted;
    webClient.DownloadStringAsync(new Uri("../Data/" + resourceName, UriKind.Relative));
}

private void OnGetConfigurationXmlCompleted(object sender, DownloadStringCompletedEventArgs e)
{
    if (e.Error == null && !string.IsNullOrEmpty(e.Result))
    {
        //use xml string here
    }
}
2 голосов
/ 28 июля 2011

Мы довольно часто используем метод объекта конфигурации, и я думаю, что он работает хорошо.

Вы также сможете использовать свой первоначальный метод ... Я знаю, что в нескольких местах мы выполнили некоторую настройку XML на веб-ресурсе, который мы извлекли в Silverlight, проанализировали и кое-что сделали.

...