...

Изменение стандартного интерфейса профиля пользователя

Тема в разделе "Разработчикам", создана пользователем elmakb, 24 май 2018.

  1. elmakb

    elmakb New Member

    И забыл написать - спасибо за предыдущие ответы всем, кто откликнулся!
     
  2. arkarimov

    arkarimov Member

    Та же самая проблема - включите в перечень используемых пространство System.Linq в этот файл.
     
  3. elmakb

    elmakb New Member

    В том то и дело, что оно там есть.
    Я никак не могу понять что нужно передать (сущность или объект? и где их можно вообще посмотреть?) в @Html.EditableProperty();

    @Html.EditableProperty("User.RabochiyGorodskoy"); выводит пустое поле без названия.
     
  4. elmakb

    elmakb New Member

    Вот весь код:
    Код:
    @using System.Linq
    @using EleWise.ELMA.ConfigurationModel
    @model EleWise.ELMA.Security.Models.IUser
    
    @using (Html.TableForm(EleWise.ELMA.Model.Views.ViewType.Edit)) //зачем эта строка?
    {
        @Html.EditableProperty("User.RabochiyGorodskoy");
    }
    
    @Html.ExtensionZone("EleWise.ELMA.BPM.Web.Security.ContactInfoEditor") //зачем эта строка?
    
     
  5. elmakb

    elmakb New Member

    По умолчанию код такой:
    Код:
    @using (Html.TableForm(EleWise.ELMA.Model.Views.ViewType.Edit)) //зачем эта строка?
    {
         @Html.EditableProperty(u => u.Skype, a => a.Html.style.width = "250px;") //что тут есть u? по сути обращаются к свойству Skype, а где оно прописано не ясно, если объясните, то будет очень здорово. Есть подозрение, что есть ещё файл, в котором это всё описано.
    }
    
     
  6. elmakb

    elmakb New Member

    Остановился на таком коде:
    Код:
    @using System.Linq
    @using EleWise.ELMA.ConfigurationModel
    @model EleWise.ELMA.Security.Models.IUser
    @using (Html.TableForm(EleWise.ELMA.Model.Views.ViewType.Edit))
    {
    @Html.EditableProperty(m => m.EMail)
    @Html.EditableProperty(m => m.Skype)
    //@Html.EditableProperty(m => m.RabochiyGorodskoy)
    }
    @Html.ExtensionZone("EleWise.ELMA.BPM.Web.Security.ContactInfoEditor")
    Перебрал не мало вариаций кода, подключение директив на подобии System.Data.Entity.
    Никак не могу понять где находятся эти свойства / как к ним обращаться: Skype, EMail, WorkPhone, MobilePhone, RoomNumber, ICQ, JabberID.
    В исходном коде это делается так:
    Код:
    @Html.EditableProperty(m => m.EMail)
    В моём случаем есть свойство RabochiyGorodskoy (добавлял через "Объекты-Пользователь-добавить свойство").
    Понимаю, что должно быть что-то на подобии:
    Код:
    @Html.EditableProperty(m => m.директива.RabochiyGorodskoy)
    или
    Код:
    @Html.EditableProperty(НазваниеИнтерфеса.RabochiyGorodskoy)
    Так же находил много статей ELMA с примерами:
    Код:
    @Html.EditableProperty("Entity.Svoistvo")
    @Html.EditableProperty("Zakazchik")
    Так и не понял откуда их взяли. Прошу помочь с решением этого вопроса.
     
  7. arkarimov

    arkarimov Member

    У вас приезжает в этот файл модель имеющая тип IUser.
    У вас свойство RabochiyGorodskoy есть у интерфейса IUserConfigExt.
    Поэтому чтобы получить в лямбда-выражении нужный результат нужно преобразовать модель к нужному типу и у него получить интересующее поле.
    @Html.EditableProperty(m => ((IUserConfigExt)m).RabochiyGorodskoy)
     
  8. elmakb

    elmakb New Member

    Всем большое спасибо за ответы! Задача решена, вот только уже она не так актуальна... Зато другим будет опыт)
     

Поделиться: