Как я совместно использую общие веб-ресурсы между веб-приложениями в Visual Studio?

Пути в JGit всегда должны указываться относительно корневого каталога репозитория. Также разделитель пути - '/' на всех платформах.

Следовательно, ваш код должен выглядеть следующим образом.

String path = "path/to";
String fileName = "file.ext";
...
new PathEdit(path + "/" + fileName)

, чтобы получить такой путь: path/to/file.ext

Также обратите внимание, что большинству API JGit требуются относительные пути, то есть не должно быть ведущего '/'.

.
9
задан Jan Aagaard 27 March 2009 в 08:19
поделиться

2 ответа

Многие разработчики элементов управления связывают свой webresources использование второго метода, который Вы описываете - добавление их как встроенные ресурсы в .dll. Таким образом, можно распределить средства управления, не имея необходимость копировать набор папок и файлов в каждый веб-сайт, который хочет использовать их и удостовериться пути к папкам все соответствие, и т.д. Вы также получаете преимущество намного более легкой локализации/интернационализации Ваших ресурсов.

Однако вещью WebResource.axd является недостаток. Можно обычно "отлаживать" URL с чем-то как Firebug для наблюдения то, что на самом деле было возвращено из запроса, но я соглашаюсь, это может быть боль, если что-то не работает правильно. Другой недостаток состоит в том, если у Вас есть десятки ресурсов для одного управления сервером, особенно если на них ссылаются многократно каждый (думайте о treeview с сотнями маленьких изображений на узлах) - затем URL может добавить тонну фактических байтов к заключительному выводу HTML.

Если бы Ваше распределение/локализация должно перевесить Ваши потребности оптимизации/отладки, я рассмотрел бы встраивание ресурсов.

В противном случае затем Вы могли определенно сделать № 3 - копирование всего в Ваш веб-сайт с помощью Подверсии. Проверьте Внешний облик SVN для того, как настроить его. Немного времени, которое инвестируют в изучение его теперь, могло бы сохранить Вас тонны в будущем!

2
ответ дан 5 December 2019 в 01:19
поделиться

Я вынул простой способ и поместил все мои проекты в единое решение. Затем я создал проект WebUserControlLibrary, в который я поместил все совместные управления.

Для получения их в другом проекте я затем настроил событие сборки для каждого проекта скопировать UCS в специальную папку:

copy "$(SolutionDir)WebUserControlLibrary\UserControls\*.ascx"
   "$(ProjectDir)ImportedUserControls\UserControls"

И, конечно, сошлитесь на WebUserControlLibrary из проектов, для которых нужен он.

Преимущества этого подхода:

  • Отладка в работах Visual Studio,
  • Никакое дублирование кода

Недостатки:

  • Неуклюжее решение :)
  • После изменения .ascx-файла должен быть восстановлен проект. Это означает, что не возможно изменить HTML и обновить страницу в IE и видеть результаты непосредственно.
2
ответ дан 5 December 2019 в 01:19
поделиться
Другие вопросы по тегам:

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