Как изменить тип фильтра возврата по умолчанию в asp.net MVC? [Дубликат]

Компилятор хочет, чтобы вы это записывали:

private static List<String> list = new ArrayList<String>();

, потому что в противном случае вы могли бы добавить любой тип, который вам нравится, в list, делая создание как new ArrayList<String>() бессмысленным. Java generics - это только функция времени компиляции, поэтому объект, созданный с помощью new ArrayList<String>(), с радостью примет Integer или JFrame элементы, если они назначены ссылке «raw type» List - сам объект ничего не знает о какие типы он должен содержать, только компилятор делает.

8
задан Roman 18 November 2013 в 01:02
поделиться

4 ответа

Во-первых, похоже, что у вас установлены Visual Studio 2013 и 2012, установленные на вашем компьютере. Я попытался посмотреть путь, который вы предоставили, я не мог его найти. На вашем пути, похоже, вы пытаетесь использовать шаблоны MVC4. Вот мой путь:

C:\Program Files (x86)\Microsoft Visual Studio 12.0\
Common7\IDE\Extensions\Microsoft\Web\Mvc\Scaffolding\Templates

Ниже описано, как я настроил шаблон шаблона для BaseController:

  1. Создать папку под названием «CodeTemplates» непосредственно в папке проекта.
  2. Перейти к следующему пути, найти папку MvcControllerWithActions, скопировать все в папку «CodeTemplates»
    C:\Program Files (x86)\Microsoft Visual Studio 12.0\
    Common7\IDE\Extensions\Microsoft\Web\Mvc\Scaffolding\Templates
    
  3. Перейти к CodeTemplates -> MvcControllerWithActions в вашем проекте.
  4. Есть два файла, Controller.cs.t4 и Controller.vb.t4 в MvcControllerWithActions, если вы использовали C #, вы можете удалить Controller.vb.t4.
  5. Откройте файл Controller.cs.t4, измените имя контроллера на BaseController, как показано ниже: f3]
  6. Теперь, когда вы пытаетесь создать MVC5-контроллер с помощью «добавить новый элемент эшафота», он будет использовать шаблон, который вы настроили.

Надеюсь, что это поможет.

16
ответ дан Klors 22 August 2018 в 03:03
поделиться
  • 1
    Спасибо, он работает хорошо! В моем случае я использую VSExpress, поэтому фактический путь: C: \ Program Files (x86) \ Microsoft Visual Studio 12.0 \ Common7 \ IDE \ VWDExpressExtensions \ Microsoft \ Web \ Mvc \ Scaffolding \ Templates – Roman 18 November 2013 в 10:04
  • 2
    Смешные, мои находятся по адресу: C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\ItemTemplates\CSharp\Web\MVC\1033 – Eric Bishard 17 February 2014 в 04:47
  • 3
    1033? Почему у моей папки нет Scaffolding/Templates? странный – Eric Bishard 17 February 2014 в 04:48
  • 4
    Вместо того, чтобы изменять шаблон, я хочу добавить новый шаблон, чтобы у меня была возможность выбрать либо по умолчанию, либо мой настроенный шаблон в зависимости от требования. Это возможно ? Я пытался сделать это, копируя шаблон по умолчанию в своем решении и переименовывая его. Но когда я добавляю контроллер, он не показывает мой шаблон там. – Rajesh Naik 11 October 2016 в 05:12
2
ответ дан drneel 22 August 2018 в 03:03
поделиться

Шаблоны MVC5 T4 расположены в C: \ Program Files (x86) \ Microsoft Visual Studio 12.0 \ Common7 \ IDE \ VWDExpressExtensions \ Microsoft \ Web \ Mvc \ Scaffolding \ Templates \ MvcView

1
ответ дан Joop Stringer 22 August 2018 в 03:03
поделиться

Шаблоны MVC4 и MVC5 расположены в разных местах. Хотя шаблоны MVC4 находятся в папке, которую вы указали, шаблоны MVC5 находятся в этой папке:

C: \ Program Files (x86) \ Microsoft Visual Studio 12.0 \ Common7 \ IDE \ Extensions \ Microsoft \ Web \ Mvc \ Scaffolding \ Templates

Что вам нужно сделать для настройки, это создать папку с именем CodeTemplates в папке вашего проекта и скопировать шаблоны, которые вы хотите настроить, в папку CodeTemplates.

Вам нужно будет скопировать папки MvcView и MvcControllerWithContext для использования с контроллером MVC 5 с представлением, используя команду EntityFramework.

ВНИМАНИЕ

  • Оба каталога должны иметь одну и ту же структуру папок. Я имею в виду, не копируйте Create.cs.t4 в папку MvcView прямо в папку CodeTemplates. Просто скопируйте всю папку MvcView в папку CodeTemplates.
  • Не удаляйте такие файлы, как Imports.include.t4 и ModelMetadataFunctions.cs.include.t4, потому что другие файлы должны быть там.
  • Если вы используете C #, не стесняйтесь удалять файлы с расширением .vb.t4 и наоборот.
2
ответ дан Sinan ILYAS 22 August 2018 в 03:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: