Работа с веб-ресурсами на C# в Dynamics CRM

Примеры работы с веб-ресурсами в Microsoft Dynamics CRM 2011/2013.

Создание веб-ресурса

/// <summary>
/// Тип веб-ресурса.
/// </summary>
public enum WebResourceType
{
  /// <summary>
  /// Веб-страница (HTML).
  /// </summary>
  Html = 1,

  /// <summary>
  /// Скрипт (JScript).
  /// </summary>
  // ReSharper disable once InconsistentNaming
  JS = 3
}


/// <summary> 
/// Создание веб-ресурса. 
/// </summary> 
/// <param name="service">Ссылка на экземпляр CRM-сервиса.</param> 
/// <param name="type">Тип веб-ресурса.</param> 
/// <param name="name">Уникальное имя веб-ресурса.</param> 
/// <param name="displayName">Отображаемое имя веб-ресурса.</param> 
/// <param name="description">Описание веб-ресурса.</param> 
/// <param name="content">Содержимое файла веб-ресурса.</param> 
/// <returns> 
/// Метод возвращает идентификатор записи созданного веб-ресурса. 
/// </returns> 
/// <remarks> 
/// Если параметр <paramref name="displayName"/> равен <c>null</c> или 
/// пустой строке, то в качестве отображаемого имени используется 
/// значение параметра <paramref name="name"/>. 
/// </remarks> 
public Guid CreateWebResource(IOrganizationService service, 
  WebResourceType type, string name, string displayName, 
  string description, string content) 
{ 
  var resource = new Entity("webresource") 
  { 
    Attributes = new AttributeCollection 
    { 
      { "webresourcetype", new OptionSetValue((int)type) }, 
      { "name", name }, 
      { "displayname", 
        string.IsNullOrEmpty(displayName) ? name : displayName }, 
      { "description", description }, 
      { "content", Convert.ToBase64String(
        System.Text.Encoding.UTF8.GetBytes(content)) } 
    } 
  }; 
  return service.Create(resource); 
}

Обновление веб-ресурса

/// <summary>
/// Обновление веб-ресурса.
/// </summary>
/// <param name="service">Ссылка на экземпляр CRM-сервиса.</param>
/// <param name="resourceId">Идентификатор записи веб-ресурса.</param>
/// <param name="name">Отображаемое имя, которым нужно обновить 
/// веб-ресурс.</param>
/// <param name="content">Содержимое файла, которым нужно обновить 
/// веб-ресурс.</param>
public void UpdateWebResource(IOrganizationService service,
  Guid resourceId, string name, string content)
{
  var resource = new Entity("webresource")
  {
    Id = resourceId,
    Attributes = new AttributeCollection
    {
      { "name", name },
      { "content", Convert.ToBase64String(
        System.Text.Encoding.UTF8.GetBytes(content)) }
    }
  };
  service.Update(resource);
}

About the author

Добавить комментарий

Сказать спасибо

Способ платежа:

Подписаться на обновления

Укажите свой e-mail чтобы получать уведомления о новых статьях.

Присоединиться к еще 1 подписчику