5

Sono nuovo su MVC 5.0 e sto creando un'applicazione utilizzando MVC 5.0 con entity framework 6.0 e modelli e controller per scaffolding. Voglio creare modelli personalizzati usando la griglia di kendo ui per esempio per mostrare i dati dal mio database.Creazione di modelli di Scaffolding personalizzati in Visual Studio 2013

ho seguito questo esempio: How to create custom scaffold templates in ASP.NET MVC5?

ma io non sono riuscito a trovare il modo di creare visualizzazioni personalizzate. i miei nuovi modelli di visualizzazione sono da nessuna parte e non posso sceglierli.

ho visto che in MVC 4 e versioni precedenti era un diverso approccio sull'uso o la creazione di temi personalizzati.

qualcuno può aiutarmi in merito ai processi?

+0

Avere stesso problema con Visual Studio 2013 ultimo Update 2 – Kbdavis07

risposta

0

Non so se questo funzionerà in MVC5, ma ho avuto successo nel MVC3 aggiungendo i modelli per il mio progetto:

MyProject 
| 
-- CodeTemplates 
    | 
    +- AddController 
    | | 
    | +- Controller.tt 
    | -- ControllerWithContext.tt 
    | 
    -- AddView 
     | 
     -- CSHTML 
      | 
      +- Create.tt 
      +- Delete.tt 
      +- Details.tt 
      +- Edit.tt 
      +- Empty.tt 
      -- List.tt 

Se questo funziona in MVC5, me lo faccia sapere. Inoltre, mettendo qui i modelli li rende disponibili a tutti nel team di sviluppo, un vantaggio decisivo per noi.

Vedere la risposta accettata Custom Scaffolding Templates in Visual Studio 2013 per ulteriori dettagli.

0

Ho avuto il tuo problema ieri e ho trovato questo link. Lo script seguente deve essere inserito nel file modello T4.

<script> 
    $(document).ready(function() { 
     setTimeout(function() { 
     $("#MYGRID").kendoGrid({ 
         dataSource: { 
          type: "json", 
          transport: { 
           read: "/GetJsonData" 
          }, 
          schema: { 
           model: { 
            fields: { 
            item1:{type:"string"}, 
            item2:{type:"string"}, 
            item3:{type:"string"} 
            } 
           } 
          }, 
          pageSize: 10 
         }, 
         columns: [{ 
           field:"Id", 
           filterable: false 
          }, 
          "Column2", 
          "Column3" 
         ] 
        }); 
     }); 
    }); 
</script> 

Aggiornamento: personalizzo la griglia di MVC nel template T4 per Kendo griglia:

@(Html.Kendo().Grid(Model) 
     .Name("Grid") 
     .Columns(columns => 
     { 
      <# IEnumerable <PropertyMetadata> properties = ModelMetadata.Properties; 
      foreach (PropertyMetadata property in properties) 
       { 
       if (property.Scaffold && !property.IsPrimaryKey && !property.IsForeignKey) 
        { 
         #> 
         <# 
           // We do not want to show any association properties for which there is 
           // no associated foreign key. 
           if (property.IsAssociation && GetRelatedModelMetadata(property) == null) 
            { 
             continue; 
            } 
         #> 
      columns.Bound(model => model.<#= GetValueExpression(property) #>); 
        <#} 
       }#> 
      .columns.Bound(item => 
          @item.objectId).Title("title").Filterable(false).Groupable(false); 
     }) 
      .DataSource(dataSource => dataSource 
             .Server 
             .Model(model => model.Id(item => item.objectId)) 


    ) 
    ) 
Problemi correlati