Ваш EmailSender
& amp; FackeEmailSender
не реализуют какой-либо интерфейс. Вы можете извлечь интерфейс EmailSender и затем реализовать этот интерфейс для обоих компонентов
Можно создать или Средства управления Интернет-пользователя или веб-Пользовательские элементы управления, которые инкапсулируют функциональность, в которой Вы нуждаетесь. Основное различие между двумя средствами управления заключается в простоте создания по сравнению с простотой использования во время проектирования.
Необходимо, возможно, рассмотреть создание библиотеки Web Custom Control. Существует пошаговая демонстрация для создания веб-пользовательского элемента управления с помощью шаблона Web Control Library.
Согласно рекомендациям "Статьи MSDN для Средств управления Интернет-пользователя по сравнению с Веб-Пользовательскими элементами управления" это различия между двумя типами средств управления:
Средства управления интернет-пользователя легко сделать, но они могут быть менее удобными для использования в усовершенствованных сценариях. Вы разрабатываете средства управления Интернет-пользователя почти точно тот же способ, которым Вы разрабатываете страницы Web Forms. Как Веб-формы, пользовательские элементы управления могут быть созданы в визуальном разработчике, они могут быть записаны с кодом, разделенным от HTML, и они могут обработать события выполнения.
Однако, потому что средства управления Интернет-пользователя компилируются динамично во время выполнения, они не могут быть добавлены к Панели инструментов, и они представлены простым глифом заполнителя при добавлении к странице. Это делает средства управления Интернет-пользователя тяжелее, чтобы использовать, если Вы приучены к полной поддержке режима разработки Visual Studio.NET, включая предварительные просмотры Окна свойств и Режима конструктора.
Кроме того, единственный способ совместно использовать пользовательский элемент управления между приложениями состоит в том, чтобы поместить отдельную копию в каждое приложение, которое берет больше обслуживания, если Вы вносите изменения в управление.
Веб-пользовательские элементы управления являются скомпилированным кодом, который делает их легче использовать, но более трудный создать; веб-пользовательские элементы управления должны быть созданы в коде. После того как Вы создали управление, однако, можно добавить его к Панели инструментов и отобразить его в визуальном разработчике с полной поддержкой Окна свойств и всеми другими функциями времени проектирования управления сервером ASP.NET.
Кроме того, можно установить единственную копию веб-пользовательского элемента управления в глобальном кэше сборок и совместно использовать его между приложениями, который делает обслуживание легче. Для получения дополнительной информации посмотрите глобальный кэш сборок.
Как ссылка Платта упоминает, если Вы идете для повторного использования затем, Средства управления Интернет-пользователя не очень хороши. ascx файл должен быть вручную скопирован в каждый проект, в котором Вы хотите использовать их, или необходимо взломать путь вокруг этого.
Лучше использовать Систему. Сеть. UI.WebControls. WebControl, который является тем, что Вы получаете, когда Вы добавляете "Управление сервером ASP.NET". Они разработаны для повторного использования. Если одни из существующих средств управления платформой отвечают всем требованиям по большей части, и просто необходимо расширить функциональность их, затем добавить "Управление сервером ASP.NET" и изменить их для наследования Панели или Меню или что бы то ни было.
Если Вы все еще полны решимости заставить допускающие повторное использование Средства управления Интернет-пользователя работать, то эта статья Gu должна установить Вас на правильном пути.
Существует шаблон проекта, названный "Управление сервером ASP.NET", что я предполагаю, что можно использовать...
- larsw
Выполните следующие шаги (из этого сообщения Phil Haacked):
Закройте VS.NET 2005.
Откройте каталог C **:\Program Files\Microsoft Visual Studio 8\Web\WebNewFileItems\CSharp ** (принятие стандартной установки VS.NET).
Откройте файл CSharpItems.vsdir в Блокноте. Выберите текст и скопируйте его в буфер обмена.
Теперь откройте файл C:\Program Files\Microsoft Visual Studio 8\VC#\CSharpProjectItems\CSharpItems.vsdir и вставьте содержание буфера обмена под существующим текстом.
Теперь “Управление Интернет-пользователя” должно быть опцией, когда Вы выбираете, Добавляют | Новый Объект.
Ссылка: http://haacked.com/archive/2006/02/07/addingwebusercontroltoaclasslibraryinvs.net2005.aspx
Можно сделать что-либо в библиотеке классов.
Именно. Вы теперь имеете допускающий повторное использование контроль для ASP.NET.
Вы могли сделать, некоторым специальным вещам нравится, добавляют атрибуты к Вашему классу и свойствам, но они действительно не нужны.
[DefaultProperty("Text")]
[Category("...")]
[DefaultValue("")]
Вы могли с помощью поставщиков виртуального тракта, но Вы, которых необходимо рассмотреть, стоит ли это действительно хитрости. Рассмотрите эту codeproject статью о предмете.