Как я совместно использую пользовательские элементы управления между веб-приложениями в ASP.NET?

Используйте ListView вместо SingleChildScrollView, поместите оставшуюся часть содержимого в ListView

    Widget build(BuildContext context) {
return Scaffold(
backgroundColor: Colors.white,
    resizeToAvoidBottomPadding: false,
    body: NestedScrollView(
    controller: _controller,
              headerSliverBuilder: (BuildContext context, bool innerBoxScrolled){
                  return <Widget>[
                    SliverAppBar(
              },
              body:ListView(
            ),
12
задан Community 23 May 2017 в 02:24
поделиться

7 ответов

Путем мы делаем это в моей существующей компании, должен удостовериться, что CommonControlsWebApp является WebApplication, не веб-сайт. Затем Вы используете названия папок, которые помогли бы идентифицировать его как общие, которые отличны от отдельных веб-приложений. (CommonUserControls вместо просто UserControls)

В Ваших других веб-приложениях Вы создаете виртуальный каталог к CommonUserControls, и т.д., и добавляете основанную на файле ссылку на CommonControlsWebApp.dll

Это требует, чтобы Вы использовали IIS для разработки (не казино), и Visual Studio не будет полагать, что средства управления действительно существуют, но это будет работать во времени выполнения, и можно создать очень хорошо только с предупреждениями о blahblah.ascx или недопустимом пути blahblah.master.

При использовании общих основных страниц и Visual Studio 2008 Вы будете нуждаться в SP1 на 2008 и использовать __ fallback.master в корне отдельных веб-проектов войти к режиму проектирования.

Однако я видел это на другом потоке, и я собираюсь изучить выполнение больше как это: http://webproject.scottgu.com/CSharp/UserControls/UserControls.aspx

10
ответ дан 26 October 2019 в 11:50
поделиться

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

К сожалению, asp.net действительно не имеет хорошего решения для этого. То же верно для того, чтобы поделиться основными страницами.

1
ответ дан 26 October 2019 в 11:50
поделиться

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

Используя Хранилище SourceGear, но необходимо смочь сделать это с любым продуктом управления исходным кодом.

1
ответ дан 26 October 2019 в 11:50
поделиться

Проверьте это сообщение на то, как решить эту проблему.

Основная идея состоит в том, чтобы изменить Ваш проект иметь шаг перед сборкой для копирования по .ascx файлам в подкаталог веб-приложения. Затем просто обратитесь к тем копиям при использовании их. Конечно, также необходимо сослаться на блок UserControls также.

1
ответ дан 26 October 2019 в 11:50
поделиться

Одна опция состоит в том, чтобы попробовать, "Добавьте существующий" и в диалоговом окне, которое появляется, кнопка OK имеет стрелку отбрасывания рядом с ним, измените его для Добавления со ссылкой.

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

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

0
ответ дан 26 October 2019 в 11:50
поделиться

эй это не лучший способ сделать вещи, но я раньше делал это в моем asp.net 1,1 дня - можно попробовать, это - смещает пользовательские элементы управления в отдельный проект и публикует этот проект как виртуальный каталог под iis

пока Вы не используете codebehind - Ваши обновления были бы прохладны (только обновление совместно использованная папка пользовательского элемента управления)

если Вы действительно используете codebehinds - повторно развертывают пользовательский элемент управления dlls в различные проекты


после того как Вы сделаны с этим - отображают эти пользовательские элементы управления во все проекты с помощью их виртуальных трактов

проверьте эти ссылки - http://aspadvice.com/blogs/ssmith/archive/2006/10/05/Tip_3A00_-Share-User-Controls-Between-Applications-in-ASP.NET.aspx

И

http://www.123aspx.com/redir.aspx?res=30887

0
ответ дан 26 October 2019 в 11:50
поделиться

Вы можете скомпилировать его в dll

Превращение пользовательского элемента управления .ascx в распространяемый настраиваемый элемент управления

Краткое описание шагов

Основные шаги, чтобы это произошло следующие:

  1. Запишите свой пользовательский элемент управления, как обычно, обычно используя Дизайнер Visual Studio.
  2. Протестируйте его, используя простую страницу, прежде чем пытаться его развернуть.
  3. Разверните приложение, чтобы предварительно скомпилировать его.
  4. Возьмите сборку пользовательского элемента управления, созданную на этапе развертывания, и вы по сути закончили: у вас есть пользовательский элемент управления.
  5. Наконец, используйте пользовательский элемент управления в других приложениях.

Дополнительная информация здесь http://www.nathanblevins.com/Articles/Compile-a-Web-User-Control-into-a- DLL-.Net-c-.aspx

4
ответ дан 26 October 2019 в 11:50
поделиться
Другие вопросы по тегам:

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