LINQ для SQL с хранимой процедурой, как изменить имя столбца отображения (UI) - PullRequest
0 голосов
/ 07 апреля 2011

У меня есть приложение ASP.Net MVC, использующее LINQ to SQL с хранимой процедурой.Я использовал Visual Studio Object Relation Designer для создания своего класса моделиНиже приведен код одного из свойств.Я хочу, чтобы имя моей таблицы (UI) отображало «Включенные единицы» в качестве заголовка столбца с пробелом и без кавычек.Я не хочу подчеркнуть это.Ты знаешь, как я могу это сделать?Я пробовал разные атрибуты, но не могу заставить их работать.

Спасибо

[global::System.Data.Linq.Mapping.ColumnAttribute(Storage = "_additional_valid_units", DbType = "NChar(30)")]        
    public string Units_Included
    {
        get
        {
            return this._additional_valid_units;
        }
        set
        {
            if ((this._additional_valid_units != value))
            {
                this._additional_valid_units = value;
            }
        }
    }

Вот мой .cshtml

@model HE.Web.Models.HuntDataOverview        

@{
    ViewBag.Title = "HD";
    Layout = "~/Views/SubTabOverview/_Criteria.cshtml";
}


@{          
    var grid = new WebGrid(Model.Results); 
 }  


 @using (Html.BeginForm()) 
 {        
     <div id="grid">          
        @grid.GetHtml()      
     </div>  
 } 

Это измой контроллер:

 public ActionResult Results(OverviewSearchCriteria criteria)
    {
        StatisticsServices services = new StatisticsServices();            
        List<GetGMUOverviewResult> re = services.GetGMUOverview(criteria);

        HDOverview combine = new HDOverview();
        combine.Results = re;            

        return View(combine);
    }

Ответы [ 2 ]

1 голос
/ 07 апреля 2011

Добавьте атрибут DisplayNameAttribute к свойству, и он должен работать, если вы используете помощника, который учитывает ViewModelMetaData.

[DisplayName("Units Included")]
public string Units_Included
{
}
0 голосов
/ 10 апреля 2011

Я не обязательно нашел ответ, но у меня есть простое решение.Прежде всего, лучшее исследование, которое я смог найти, показало, что это может быть ошибка .net, может быть.Тем не менее, чтобы изменить имя моей webGrid, все, что мне нужно сделать, это не взять значения по умолчанию из модели.Я сделал это, изменив свой webGrid следующим образом:

<div id="grid">

    @grid.GetHtml( 
    tableStyle: "grid", 
    headerStyle: "head", 
    alternatingRowStyle: "alt", 
    columns: grid.Columns( 
        grid.Column("GMU","THIS IS A TEST"),
          grid.Column("Units_Included"),
          grid.Column("min_req_res_points") 
    ) 
) 

 </div>

Как вы заметили, в первом столбце я добавил новое имя столбца «ЭТО ТЕСТ».Теперь я могу назвать свои столбцы как мне нужно.ИСПРАВЛЕНО!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...