Пошаговое руководство. Создание базового определения сайта Project — Visual Studio (Windows)
Twitter LinkedIn Facebook Адрес электронной почты- Статья
Область применения:Visual StudioVisual Studio для Mac Visual Studio Code
В этом пошаговом руководстве показано, как создать базовое определение сайта, содержащее визуальную веб-часть с некоторыми элементами управления. Для ясности в создаваемой визуальной веб-части есть только несколько элементов управления. Однако можно создать более сложные SharePoint определения сайтов, которые включают дополнительные функциональные возможности.
В этом пошаговом руководстве описаны следующие задачи.
Создание определения сайта с помощью шаблона проекта Visual Studio.
Создание сайта SharePoint с помощью определения сайта в SharePoint.
Добавление визуальной веб-части в решение.
Настроив страницу default.aspx сайта, добавив в нее новую визуальную веб-часть.
Примечание
Отображаемые на компьютере имена или расположения некоторых элементов пользовательского интерфейса Visual Studio могут отличаться от указанных в следующих инструкциях. Это зависит от имеющегося выпуска Visual Studio и используемых параметров. Дополнительные сведения см. в разделе Персонализация среды IDE.
Предварительные требования
Для выполнения этого пошагового руководства требуются следующие компоненты:
Создание решения для определения сайта
Сначала создайте проект определения сайта в Visual Studio.
Создание проекта определения сайта
В строке меню выберите Файл>Создать>Проект. Если интегрированная среда разработки настроена на использование параметров разработки Visual Basic, в строке меню выберите «Создать файл>» Project.
Откроется диалоговое окно Создание проекта .
Разверните узел visual C# или узел Visual Basic, разверните узел SharePoint и выберите узел 2010.
В списке шаблонов выберите шаблон SharePoint 2010 Project.
В поле «Имя» введите TestSiteDef и нажмите кнопку «ОК «.
Откроется мастер настройки SharePoint
На странице «Укажите сайт и уровень безопасности для отладки» введите URL-адрес сайта SharePoint, в котором требуется выполнить отладку определения сайта, или используйте расположение по умолчанию (http:// System Name/).
В разделе «Что такое уровень доверия для этого решения SharePoint?», нажмите кнопку «Развернуть как решение фермы«.
Все проекты определения сайта должны быть развернуты в качестве решений фермы. Дополнительные сведения о изолированных решениях и решениях ферм см. в разделе «Изолированные решения».
Нажмите кнопку Готово.
Проект появится в Обозреватель решений.
В Обозреватель решений выберите узел проекта, а затем в строке меню выберите Project>Add New Item.
В разделе Visual C# или Visual Basic разверните узел SharePoint и выберите узел 2010.
В области «Шаблоны» выберите шаблон «Определение сайта «, оставьте имя какSiteDefinition1 и нажмите кнопку «Добавить «.
Создание визуальной веб-части
Теперь необходимо создать визуальную веб-часть, отображаемую на главной странице определения сайта.
Создание визуальной веб-части
В Обозреватель решений нажмите кнопку «Показать все файлы«.
Выберите узел проекта SiteDefinition1, а затем в строке меню выберите пункт Project>Add New Item.
Откроется диалоговое окно Добавление нового элемента.
Разверните узел visual C# или узел Visual Basic
В списке шаблонов выберите шаблон визуальной веб-части , оставьте имя по умолчанию VisualWebPart1 и нажмите кнопку «Добавить «.
Откроется файл VisualWebPart1.ascx .
В нижней части VisualWebPart1. ascx добавьте следующую разметку, чтобы добавить в форму три элемента управления: текстовое поле, кнопку и метку:
<table> <tr> <td> <asp:TextBox runat="server"></asp:TextBox> </td> <td> <asp:Button runat="server" Text = "Change Label Text"></asp:Button> </td> <td> <asp:Label runat="server"></asp:Label> </td> </tr> </table>
В разделе VisualWebPart1.ascx откройте файл VisualWebPart1.ascx.cs (для Visual C#) или VisualWebPart1.ascx.vb (для Visual Basic), а затем добавьте следующий код:
- C#
- VB
protected void btnSubmit_Click(object sender, EventArgs e) { lblName.Text = tbName.Text; }
Этот код добавляет функциональные возможности для нажатия кнопки веб-части.
Добавление визуальной веб-части на страницу ASPX по умолчанию
Затем добавьте визуальную веб-часть на страницу ASPX по умолчанию определения сайта.
Добавление визуальной веб-части на страницу ASPX по умолчанию
Откройте страницу default.aspx и добавьте следующую строку после тега
WebPartPages
:<%@ Register Tagprefix="MyWebPartControls" Namespace="TestSiteDef.VisualWebPart1" Assembly="$SharePoint.Project.AssemblyFullName$" %>
Эта строка связывает имя MyWebPartControls с веб-частью и его кодом. Параметр пространства имен соответствует пространству имен, используемому в файле кода VisualWebPart1.ascx
.Найдите элемент
</asp:Content>
и замените весь последующий разделContentPlaceHolderId="PlaceHolderMain"
и его содержимое следующим кодом.<asp:Content ContentPlaceHolderId="PlaceHolderMain" runat="server"> <MyWebPartControls:VisualWebPart1 runat="server" /> </asp:Content>
Этот код создает ссылку на созданную ранее визуальную веб-часть.
В Обозреватель решений откройте контекстное меню узла SiteDefinition1 и выберите «Задать как элемент запуска«.
Развертывание и запуск решения определения сайта
Далее, разверните проект в SharePoint, а затем запустите проект.
Развертывание и запуск определения сайта
В строке меню выберите «Сборка>deploy TestSiteDef«.
Нажмите клавишу F5.
Visual Studio скомпилирует код, добавит его компоненты, поместит все его файлы в WSP-файл пакета и развернет этот WSP-файл на сервере SharePoint. SharePoint затем устанавливает файлы, а затем активирует компоненты.
Создание сайта на основе определения сайта
Затем создайте сайт с помощью нового определения сайта.
Создание сайта с помощью определения сайта
На сайте SharePoint откроется страница «Новый сайт SharePoint».
В разделе «Заголовок и описание » введите «Мой новый сайт » для заголовка и описания сайта.
В разделе «Адрес веб-сайта » введите mynewsite в поле URL-адреса .
В разделе «Шаблон» выберите вкладку «Настройки SharePoint«.
В списке «Выбор шаблона » выберите SiteDefinition1.
Оставьте остальные параметры по умолчанию и нажмите кнопку «Создать «.
Появится новый сайт.
Тестирование нового сайта
Теперь необходимо протестировать работу созданного сайта.
Тестирование нового сайта
См. также
- Практическое руководство. Создание приемника событий
- Разработка решений SharePoint
Введение в создание сайтов на ASP.NET MVC
Данное руководство устарело. Актуальное руководство: Руководство по ASP.NET Core
Последнее обновление: 31.10.2015
ASP.NET MVC представляет собой платформу для создания сайтов и веб-приложений с использованием паттерна (или шаблона) MVC (model — view — controller).
Работа над новой платформой была начата в 2007 году, а в 2009 году появилась первая версия. В итоге к текущему моменту (2012 год) уже было выпущено 4 версии платформы, а сам фреймворк обрел большую популярность по всему миру благодаря своей гибкости и адаптивности.
Шаблон MVC, лежащий в основе новой платформы, подразумевает взаимодействие трех компонентов: контроллера (controller), модели (model) и представления (view). Что же представляют эти компоненты?
Контроллер (controller) представляет класс, с которого собственно и начинается работа приложения. Этот класс обеспечивает связь между моделью и представлением. Получая вводимые пользователем данные, контроллер исходя из внутренней логики при необходимости обращается к модели и генерирует соответствующее представление.
Представление (view) — это собственно визуальная часть или пользовательский интерфейс приложения — например, html-страница, через которую пользователь, зашедший на сайт, взаимодействует с веб-приложением.
Модель (model) представляет набор классов, описывающих логику используемых данных.
Общую схему взаимодействия упрощенно можно представить следующим образом:
ASP.NET MVC и ASP.NET Web Forms
ASP.NET MVC является в некотором роде конкурентом для традиционных веб-форм и имеет по сравнению с ними следующие преимущества:
Разделение ответственности. В MVC приложение состоит из трех частей: контроллера, представления и модели, каждая из которых выполняет свои специфичные функции. В итоге приложение будет легче поддерживать модифицировать в будущем.
В силу разделения ответственности приложения mvc обладают лучшей тестируемостью. И мы можем тестировать отдельные компоненты независимо друг от друга.
Соответствие протоколу HTTP. Приложения MVC в отличие от веб-форм не поддерживают объекты состояния (ViewState). Ясность и простота платформы позволяют добиться большего контроля над работой приложения
Гибкость. Вы можете настраивать различные компоненты платформы по своему усмотрению. Изменять какие-либо части конвейера работы MVC или адаптировать его к своим нуждам и потребностям.
В то же время не стоит однозначно сбрасывать со счетов ASP.NET WebForms. Поскольку она также имеет свои сильные стороны, например, модель событий, которая будет ближе тем разработчикам, которые ранее занимались созданием клиентских приложений.
В традиционных веб-формах вы имеете контроль над разметкой и можете в реальном времени в визуальном редакторе Visual Studio увидеть, как будет выглядеть та или иная страница. При работе с MVC Visual Studio подобного не позволяет делать.
В любом случае вы вольны выбирать ту платформу, которая приходится вам больше по душе. И если у вас написаны объемные проекты с применением традиционных веб-форм, возможно, стоит продолжать с ними работать. Тем более, что ASP.NET Web Forms еще не умирает и также продолжает развиваться.
НазадСодержаниеВперед
Кодировать веб-сайт в C?
спросил
Изменено 2 года, 11 месяцев назад
Просмотрено 17 тысяч раз
Я только что читал страницу http://www.meebo.com/ О нас и прочитал эту строку: «Кроме того, мы одни из немногих, кто все еще использует C!»
Учитывая, что meebo — клиент онлайн-чата, как они работают с C? Как они могут использовать C для серверной части? Как он взаимодействует с интерфейсом? Например, предположим, что пользователь создает новую учетную запись и необходимо создать новый каталог. Как информация передается от внешнего интерфейса к внутреннему?
Извините, если это некорректный вопрос.
Спасибо
Редактировать 1: Введение в CGI было великолепно. Любые хорошие книги, которые я могу подобрать в своей библиотеке по этому поводу?
Большое спасибо за быстрый ответ, ребята!
Я не знаю, как meebo это делает, но, учитывая, что это программное обеспечение для чата, у них, вероятно, есть собственный сервер, написанный на C для обработки фактического трафика сообщений.
Однако Apache и большинство других HTTP-серверов всегда могли вызывать программы на C так же, как они могут вызывать PHP, CGI и другие языки для определенных запросов. Некоторые веб-сайты даже написаны на Лиспе.
Бэкэнд должен компилироваться каждый раз, в отличие от интерпретируемого языка, но это происходит при развертывании и является частью сценариев сборки/производства.
Предоставленные разрешения и учетная запись пользователя, под которой работает программа C, должны быть тщательно выбраны, и, конечно же, веб-сайт C страдает от тех же проблем, с которыми может столкнуться любая другая программа C, таких как переполнение буфера, segfault, переполнение стека и т. д. Как пока вы запускаете его с ограниченными разрешениями, вы лучше защищены, и он не хуже, чем любой другой язык/платформа/архитектура.
Однако для серверов он по-прежнему широко используется — золотой стандарт, я полагаю. Вы можете найти множество серверов, написанных на Java, C++ и любом другом языке, но C, похоже, просто никуда не делся.
-Adam
Я развернул неблокирующие серверы HTTP 1.1 всего за 50 строк кода (разреженный) или несколько сотен (лучше), до 5000 (безопасный). Серверы будут загружать динамические общие объекты в виде модулей для обработки определенных типов запросов.
Родительский код будет обрабатывать отслеживание соединений, поддержку активности, запросы GET/POST/HEAD и передавать их обработчикам, загружаемым при запуске. Я сделал это, когда работал с ОЧЕНЬ небольшим пространством для локтей на встроенных устройствах, которые должны были иметь какую-то веб-панель управления … в частности, устройство, которое контролировало розетки.
Точка входа в каждый DSO определялась используемым URL-адресом и методом (т. е. /foo вел себя по-разному в зависимости от типа обслуживаемого запроса).
Мой маленький сервер работал очень хорошо, мог обслуживать около 150 клиентов без разветвлений или потоков и даже имел симпатичную небольшую систему шаблонов, так что люди, работающие с пользовательским интерфейсом, могли изменять страницы, не прибегая к помощи рук.
Я бы решительно , а не , использовал такую установку на любом производственном сайте, даже на домашней странице hello world с гостевой книгой.
Теперь, если все, что мне нужно сделать, это прослушивать порт 80/443, принимать запросы с небольшой полезной нагрузкой POST, дезинфицировать их и пересылать другим клиентам … это немного отличается. Но это конкретная задача сервера, который притворяется веб-сервером, он не использует C для создания динамических страниц.
Meebo использует пользовательский модуль Lighttpd под названием mod_meebo. Это не полностью отвечает на ваш вопрос, но я подумал, что вам может быть интересно.
0На C можно написать множество серверных программ, не говоря уже о CGI-программировании. Они также могут использовать C с MySQL, что вполне возможно. Но без доступа к их исходному коду мы не можем узнать, сколько C они используют.
Утверждение, что они «одни из немногих, кто все еще использует C», вероятно, было просто шуткой. С такой статистикой, по крайней мере, я бы на это надеялся.
-John
Вы можете увидеть хороший пример веб-сайта на C с исходным кодом: ископаемое.
Он использует SQLite для серверной части.
Зарегистрируйтесь или войдите в систему
Зарегистрируйтесь с помощью Google Зарегистрироваться через Facebook Зарегистрируйтесь, используя адрес электронной почты и парольОпубликовать как гость
Электронная почтаТребуется, но никогда не отображается
Опубликовать как гость
Электронная почтаТребуется, но не отображается
Нажимая «Опубликовать свой ответ», вы соглашаетесь с нашими условиями обслуживания и подтверждаете, что прочитали и поняли нашу политику конфиденциальности и кодекс поведения.
php — Почему вы не используете C для своих веб-приложений?
Прошло более 10 лет с тех пор, как ОП спросил об этом, и тенденции поиска Google (в жанре веб-программирования) по-прежнему показывают это как активные дебаты. Я хочу дать ответ на этот вопрос в 2021 году, и, поскольку я профессионально программирую с 1979 года и исчерпывающе использовал все вышеупомянутые языки, я чувствую себя достаточно компетентным, чтобы ответить на него.
C используют больше интернет-устройств, чем любой другой язык. Они просто обычно не являются общедоступными устройствами как таковыми (Cisco, сети F5 и т. д. — все их ядра скомпилированы на C). Но это встраиваемые платформы с целенаправленной функцией, требующие почти RTOS-стабильности. C по-прежнему будет доминирующим языком здесь — он настолько стар, что проблемы нестабильности не имеют значения.
Big Tech постоянно использует C; вы не найдете задание cron в их стеке, которое выполняет очистку журнала или резервное копирование, написанное на bash или PHP; если это сложно, вероятно, это двоичный файл, связанный с gcc, который выполняет тяжелую работу. Нет ничего более надежного, чем C, так как он существует всегда, и мы не находим новых ошибок в gcc.
Технологические компании в 1990-х действительно создали ядро технологий, которые мы используем сегодня, и C не был привлекательным [вообще] для использования. Многие приложения были разработаны с использованием сервлетов и апплетов Java, что быстро привело к модели MVC 9.0101 и кроссплатформенные. Последнее очень важно, как я объясню.
Microsoft не совсем приняла C или C++. Их Visual C был ужасной IDE по сравнению с Borland. Но Visual Basic стал для них хитом, поэтому VB стал классикой ASP, которую до сих пор используют многие веб-сайты. Это был первый официально поддерживаемый IIS язык (VB или Basic). Классический ASP считается старым языком, который больше не поддерживается MSFT, но его использование было широко распространено в ранних веб-приложениях, которые хотели использовать Windows NT (или Server) для своей разработки. Билл Гейтс действительно написал лучший интерпретатор Basic в свое время, а простота Basic позволила пройти очень быстрый цикл обучения, чтобы стать разработчиком. Тем не менее, IDE Borland была потрясающей, но компания взорвалась (вместе с Novell и другими великими людьми 9-го века).0 с).
Никто в здравом уме в 1990-х годах еще не разрабатывал веб-приложения для Linux, на самом деле… других производных Unix, да, но их коммерческих версий. Многие люди вообще развернули совершенно разные ОС (вспомните AIX или DEC VMS). Слова «бесплатно» и «отличное программное обеспечение» не часто входили в обиход. ИТ-менеджеры, которые де-факто стали первыми веб-мастерами, не хотели, чтобы их зарплата шла на что-то бесплатное (Linux), потому что дистрибутивы частично были фрагментированы (возможно, за исключением RedHat или Mandrake).
ИТ-менеджеры не были программистами, поэтому языки сценариев стали более популярными для веб-разработки. Веб-сайты, полностью написанные на bash, не были чем-то необычным.
Java (которая основана на C) стала, пожалуй, самым популярным представлением о будущем Интернета, отчасти потому, что у Sun было отличное оборудование и она была известна своей ОС Solaris. Большинство программистов на C, которые интересовались Интернетом, перешли на Java, он был очень похож и предлагал параллелизм (C не был разработан как параллельный язык) и в основном стабильные методы сборки мусора и очистки памяти.
VB перешел в MS и, ища скомпилированный язык для IIS, переместил его в то, что сейчас называется платформой .NET, которая по сложности представляет собой просто VB или C#. Но недостатки IIS были преодолены за счет огромного количества развертываний Windows NT/2000.
Пузырь лопнул, и Oracle Java, Solaris и БД не стали фаворитами среди ИТ-менеджеров (хотя они были фаворитами среди руководителей, потому что отдел продаж Oracle был первоклассным). Во-первых, продукты Oracle были чрезвычайно дорогими, и они не были (и до сих пор не известны) как передовая технологическая компания. технический.
После 2000 года Linux внедрил почти все в Интернете, потому что дистрибутивы действительно стали выходить на коммерческий уровень. Вся эта идея с открытым исходным кодом работала. Windows неоднократно страдала от проблем с вирусами, а Apple была списана со счетов как мертвая организация. Коммерческие платформы подвергались все большей критике, поскольку финансовые директора сокращали бюджеты.
Linux начинался с устаревшего интерпретатора PHP с самого начала, и с этого момента язык действительно вырос. Большинство тех, кто развернул Apache, будут использовать этот язык просто потому, что он стабилен. Опять же, на данный момент у нас все еще есть ИТ-менеджеры, выполняющие эту работу.
В середине 2000-х годов, когда функции маркетинга начали занимать веб-присутствие соответствующих компаний, потребности быстро изменились. Специалисты по маркетингу любят тестирование (вспомните многовариантные A/B-кампании), поэтому языки сценариев действительно начали подкрадываться как лучший способ внесения быстрых изменений, которые можно было бы отправить в сеть без необходимости жестко кодировать HTML.
Мы забыли, что ECMAScript (Javascript) действительно взлетел, Flash начал умирать, и поэтому вся эта идея управления DOM возникла, когда все более и более быстрые браузеры смогли использовать пользовательский интерфейс.
Из всех существующих современных языков именно фреймворки обычно несут ответственность за успех новых языков. Bootstrap был быстро освоен, когда появились мобильные устройства, и интеграция с устаревшим приложением PHP была проще, чем с жестко закодированным приложением C. Мы начали наблюдать, как в основном скрипты вытесняют скомпилированные языки в качестве выбора на будущее, хотя .NET все еще имеет свое место для определенных вещей, хотя за последние 2-3 года это уменьшилось.
В конце концов, C по-прежнему остается наиболее широко используемым языком «за» Интернетом. Маршрутизаторы, балансировщики нагрузки, системы обнаружения вторжений… все это будет на C (или C++, но более вероятно, на C). Эти устройства сейчас переходят на развертывание программного обеспечения, но аппаратные устройства по-прежнему используются в крупных центрах обработки данных. Например, AWS имеет оболочку для группы коммутаторов Cisco для изменения маршрутов на основе прогнозов ToD (времени суток). Amazon, Google, Facebook все поняли, что модель балансировки нагрузки «следуй за солнцем» была хорошей отправной точкой, и действительно могли доверять это только низкоуровневым аппаратным устройствам, чтобы правильно это сделать. Появляются языки сценариев и даже скомпилированные языки, которые — для всех намеченных целей — в любом случае действительно основаны на C. Но с появлением k8s и Docker имеет смысл отказаться от фреймворка node.js и начать работать над небольшим блоком кода, который можно было бы отправить 9.0153 независимо от того, что делали другие фрагменты кода. Раньше аутсорсинг часто использовался, и это был единственный надежный способ программирования системы без конфликтов в более крупной среде разработки.
Мы все еще в начале интернета .. другими словами, еще через 10 лет будет еще один цикл, и он, вероятно, будет вдали от набора текста. Перетаскивание узлов DAG будет использоваться для создания веб-приложений аналогично тому, как художник VFX использует Nuke или Maya для создания клипа с анимированной графикой. Twilio делает это, и даже обучение модели ML уже выполняется таким образом с помощью Peltarion.
Мы еще не достигли языков наивысшего возможного уровня, так как наши абстракции в Ruby или PHP все еще похожи на C, а вложение долларов в STEM-образование не приведет к тому, что легионы детей будут изучать информатику. Тем не менее, барьер для входа будет постоянно снижаться, но потребность в разнообразном понимании языков по-прежнему будет требоваться для сложных приложений или конкретных приложений, которые требуют «чего-то», например, прямого обращения к ядру CUDA (например).
Мы просто наблюдаем разнообразие языков, как и предсказывал сам Ритчи. Фреймворки созрели, поэтому нет смысла бросать нового разработчика в проект C + CGI, когда создание скаффолда Angular занимает 5 минут.
На самом деле все это ожидалось большинством из нас с 1980-х годов.