2015-03-12 4 views
0

У меня есть следующая сетка.Kendo UI Grid Failed with Mono

@(Html.Kendo().Grid<Web.UI.ViewModels.CompanyViewModel>() 
     .Name("grid") 
     .Columns(columns => 
     {    
      columns.Bound(p => p.Name); 
      columns.Command(command => { command.Edit(); command.Destroy(); }).Width(200); 
     }) 
     .ToolBar(toolbar => toolbar.Create().Text("Add new company")) 
     .Editable(editable => editable.Mode(GridEditMode.PopUp)) 
     .Pageable() 
     .Sortable() 
     .Scrollable() 
     .HtmlAttributes(new { style = "height:430px;" }) 
     .DataSource(dataSource => dataSource 
      .Ajax() 
      .PageSize(20) 
      .Events(events => events.Error("error_handler")) 
      .Model(model => 
      { 
       model.Id(p => p.ID); 
       model.Field(id => id.ID).DefaultValue(Guid.NewGuid()); 
      }) 
      .Create(update => update.Action("EditingPopup_Create", "Company")) 
      .Read(read => read.Action("EditingPopup_Read", "Company")) 
      .Update(update => update.Action("EditingPopup_Update", "Company")) 
      .Destroy(update => update.Action("EditingPopup_Destroy", "Company")) 
     ) 
    ) 

Когда я использую эту страницу, что приложение размещено на сервере Windows, оно загружается, и все работает отлично.

Когда я пытаюсь получить доступ к этой странице, когда приложение размещено на Mono-сервере, эта страница выходит из строя.

Мне удалось найти, в какой момент это происходит.

 .Editable(editable => editable.Mode(GridEditMode.PopUp)) 

Это говорит мне

System.IO.FileNotFoundException 
Could not load file or assembly 'System.Data.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' or one of its dependencies. 

Сетка работает, если вы просто идете

.Editable() 

Так должно быть что-то делать с всплывающей функцией.

У кого-нибудь есть идеи, почему это будет сделано? Мне нужно иметь возможность редактировать сетку, используя всплывающее окно, поэтому просто изменить его на .Editable() - это не то решение, которое я ищу.

ответ

1

С Solution Explorer перейдите к ссылке на этот файл и нажмите правую кнопку мыши затем открыть Properties убедитесь, что Copy Local установлен в True Я считаю, что решит вашу проблему.

+0

Я не использую Entity Framework. Моно не поставляется с 'System.Data.Entity' на' Ubuntu'/'Linux'. Все мои сторонние пакеты имеют это свойство, равное 'true'. 'System.Data.Entity' является частью EntityFramework. –

+0

@ShaneVanWyk О, хорошо, не знал, что вы его не используете, ну, я не слишком хорошо знаком с Mono, но у вас должен быть какой-то файл конфигурации (я считаю, что Mono это 'system.web'), и там вы должны см. ссылки на 'System.Data.Entity'. Один из них должен быть в '', а 2 должен находиться в '', вы должны удалить оба этих раздела, и все должно работать. –

+0

Я могу подтвердить, что в главном 'Web.config' или в папке' Views' нет ничего. Я также широко использовал решение для 'System.Data.Entity', и ничего не получилось. –