Что такое код asp anonymouspasswordsync


Элементы управления PasswordRecovery и ChangePassword

ASP.NET — Безопасность в ASP.NET — Элементы управления PasswordRecovery и ChangePassword

PasswordRecovery

Элемент управления PasswordRecovery полезен в ситуациях, когда пользователь забывает пароль. Он запрашивает имя пользователя, а затем автоматически отображает контрольный вопрос, сохраненный для данного пользователя в хранилище удостоверений. Если пользователь вводит правильный ответ на контрольный вопрос, то его пароль автоматически отправляется по адресу электронной почты данного пользователя. На рисунке ниже показан элемент управления PasswordRecovery в действии:

Этот элемент управления включает в себя три настраиваемых режима представления. В первом пользователь должен ввести свое имя. Когда он щелкает на кнопке отправки, элемент управления через Membership API запрашивает контрольный вопрос пароля из хранилища удостоверений.

Во втором представлении этот вопрос отображается, и пользователю предлагается ввести правильный ответ. Когда правильный ответ введен, автоматически сгенерированный новый пароль либо извлеченный из хранилища старый отправляется пользователю по электронной почте. Адрес электронной почты указывался во время первичной регистрации пользователя (или при его создании в WAT).

Если отправка прошла успешно, элемент управления отображает третье представление — подтверждение. Все настройки, связанные с почтой, устанавливаются через свойства элемента управления. Разумеется, пароль может быть отправлен пользователю, только если он не хеширован. Таким образом, поставщик членства должен быть сконфигурирован так, чтобы пароль сохранялся либо в зашифрованном виде, либо в формате простого текста. Если поставщик членства хранит пароль в хеширований форме, то в этом случае генерируется новый случайный пароль, который и отправляется по электронной почте.

Для отправки сообщений по электронной почте этому элементу управления нужен SMTP-сервер. Элемент полагается на класс SmtpClient из пространства имен System.Net.Mail, который можно использовать в приложениях любого типа. Настроить этот класс можно в разделе конфигурационного файла приложения. Это значит, что вы должны сконфигурировать почтовый сервер SMTP в файле web.config следующим образом:

Подэлемент MailDefinition элемента управления PasswordRecovery позволяет установить основные свойства, как было показано в первом фрагменте кода. К тому же, через свойство BodyFileName подэлемента MailDefinition можно указать имя файла, содержащего текст сообщения электронной почты. Этот файл должен находиться в том же каталоге, что и страница, на которой расположен элемент управления. Если данный элемент управления находится внутри другого пользовательского элемента управления, то файл должен быть в каталоге этого пользовательского элемента.

Элемент управления PasswordRecovery поддерживает различные свойства стилей для задания опций форматирования и компоновки его различных частей (подобно элементу Login). За полным списком поддерживаемых свойств обращайтесь в документацию MSDN; эти свойства подобны тем, что предлагает Login.

Во время процесса восстановления пароля элемент управления PasswordRecovery инициирует несколько различных событий. Их можно обработать для настройки действий, выполняемых данным элементом. В таблице ниже перечислены все эти события:

События элемента управления PasswordRecovery

Это событие инициируется перед тем, как элемент управления начинает проверку введенного имени пользователя. Проверка имени пользователя означает поиск пользователя в хранилище членства и извлечение информации контрольного вопроса

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

Когда пользователь щелкает на кнопке отправки на втором шаге, ответ на вопрос сравнивается с тем, который записан в хранилище членства. Это событие инициируется перед выполнением данного действия


Это событие инициируется элементом управления, если введенный пользователем ответ не верен

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

Это событие инициируется элементом управления, если по какой-то причине сообщение не может быть отправлено (например, почтовый сервер не доступен)

Эти события можно использовать для подготовки информации перед тем, как она будет обработана элементом управления. Например, если нужно преобразовать все буквы в имени пользователя в нижний регистр перед его сравнением с именами, находящимися в хранилище членства, это можно сделать в событии VerifyingUser. Аналогично VerifyingAnswer можно использовать для обработки информации перед тем, как она будет обработана элементом управления. Оба события получают аргументы типа LoginCancelEventArgs, который имеет свойство Cancel. Установка этого свойства в true позволяет отменить весь шаг обработки.

При перехвате события SendingEmail появляется шанс модифицировать содержимое сообщения электронной почты перед тем, как элемент управления действительно отправит его. Переданный аргумент MailMessageEventArgs содержит свойство Message, представляющее действительное сообщение электронной почты. Модифицируя свойства Message, такие как коллекция Attachments, можно добавлять вложения, настраивать адреса для отправки копии (CC) или делать что-то еще, имеющее отношение к сообщениям электронной почты.

Шаблоны PasswordRecovery

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

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

Элементы управления для второго шага, когда выводится контрольный вопрос, помещаются в QuestionTemplate.

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

Каждый шаблон имеет определенные необходимые элементы управления. Например, UserNameTemplate требует текстового поля для ввода имени пользователя. QuestionTemplate — текстового поля для ввода вопроса, a SuccessTemplate — элемента управления Literal для отображения финального подтверждающего сообщения. Шаблон элемента управления PasswordRecovery может выглядеть следующим образом:

И снова если вы используете элементы управления с соответствующими значениями идентификаторов и указываете соответствующие значения CommandName для кнопок, то не должны писать никакого кода, как это и делалось в предыдущих примерах, где шаблоны не применялись. Некоторые из этих элементов управления обязательны для шаблонов, другие — нет. Элементы управления, входящие в шаблоны PasswordRecovery, перечислены в таблице ниже:

Событие Описание
VerifyingUser
UserLookupError
VerifyingAnswer
AnswerLookupError
SendingEmail
SendMailError
Специальные элементы управления для шаблонов PasswordRecovery

Дополнительный шаблон Идентификатор Тип элемента Обязателен? Комментарии
UserNameTemplate UserName System.Web.UI.WebControls Да TextBox
UserNameTemplate SubmitButton Все элементы управления, поддерживающие пузырьковое распространение событий Нет Name должно быть установлено в Submit
UserNameTemplate FailureText System.Web.UI.WebControls Нет Literal
QuestionTemplate UserName System.Web.UI.WebControls Нет Literal
QuestionTemplate Question System.Web.UI.WebControls Нет Literal
QuestionTemplate Answer System.Web.UI.WebControls Да TextBox
QuestionTemplate SubmitButton Все элементы управления, поддерживающие пузырьковое распространение событий Нет Name должно быть установлено в Submit
QuestionTemplate FailureText System.Web.UI.WebControls Нет Literal

Кнопкой отправки может служить любой элемент управления, поддерживающий пузырьковое распространение событий и свойство CommandName. Обычно для этой цели можно использовать Button, ImageButton или LinkButton. Свойство CommandName должно быть установлено в Submit, иначе команда не будет распознаваться элементом управления (идентификатор не просматривается и потому может быть установлен в любое значение).

SuccessTemplate не требует никаких элементов со специальными идентификаторами. Таким образом, здесь может быть добавлен любой элемент управления; он нужен только для отображения подтверждений. В предыдущем примере этот шаблон включает элемент Label, который должен отображать адрес электронной почты, куда был отправлен пароль. Установить этот элемент Label можно в процедуре обработки события SendingEmail. Опять-таки, здесь может быть применен метод FindControl для нахождения нужного элемента управления (который на самом деле является дочерним по отношению к шаблонному элементу PasswordRecovery) в соответствующем шаблоне, как показано ниже:

Поскольку элемент управления PasswordRecovery включает более одного шаблона, вызвать метод FindControl непосредственно от имени экземпляра PasswordRecovery не получится. Необходимо выбрать соответствующий шаблонный контейнер (UserNameTemplateContainer, QuestionTemplateContainer или SuccessTemplateContainer). После этого можно работать с полученным элементом управления обычным образом. В предыдущем примере для текста метки устанавливается адрес первого получателя электронной почты. Обычно при восстановлении пароля этот список содержит только одного адресата.


Элемент управления ChangePassword

ChangePassword можно использовать в качестве стандартного элемента управления для предоставления пользователю возможности смены пароля. Этот элемент просто запрашивает имя пользователя и старый пароль. Затем он приглашает пользователя ввести новый пароль и подтвердить его. Элемент ChangePassword можно применять на защищенной странице следующим образом:

И снова этот элемент включает в себя дочерний элемент MailDefinition с теми же настройками, что и PasswordRecovery. Это объясняется тем, что после успешной смены пароля элемент управления может автоматически отправлять электронную почту по адресу пользователя, если для веб-приложения сконфигурирован почтовый сервер. Как и все прочие элементы управления, ChangePassword может настраиваться как через свойства и стили, так и посредством шаблонов. Для настройки элемента управления ChangePassword применяются два шаблона:

ChangePasswordTemplate отображает поля для ввода старого имени пользователя и пароля вместе с новым паролем и полем для его подтверждения.

SuccessTemplate отображает сообщение об успехе, уведомляющее пользователя о том, удалась ли переустановка пароля.

Шаблон ChangePasswordTemplate требует, чтобы были добавлены некоторые специальные элементы управления со специальными идентификаторами и значениями свойств CommandName. Эти значения идентификаторов и CommandName используются в следующем фрагменте кода:

Элементы управления типа текстовых полей в ChangePasswordTemplate обязательны. Остальные — нет. Если соответствующим образом установить свойства ID и CommandName для кнопок, то никакого дополнительного кода писать не понадобится.

Что такое код asp anonymouspasswordsync

I have a custom usercontrol to logon users.

My Authentication setting:

— Authentication Type: Windows

— Enabled anonymous access

— IIS Authentication Setting: Basic authentication

Now is the question how I can logon an anonymous user when he type a username + password and click login in the custom user control?

Ответы

In sharepoint 2010 to login users you have to switch your site to claims mode instead of classic authentication.

Then you need to create a MembershipProvider, you can google that for tutorials,

Once you have a MembershipProvider, you need to configure it on zone in the web application’s authentication settings.


It’s easier to create two zones, one for Active Directory and one for FBA, e.g.

Now to get your usercontrol to work, you have to create an anonymous subsite, unless the entire site is anonymous.

Also, go ahead and Create a webpart that loads your user control,

Create a page that is anonymous, and add your login webpart to it.

Enable both Windows authentication and Anonymous authentication in an ASP.NET Core app

I know that this has been asked many times before, but unfortunately not about ASP.NET Core web apps, just the classic ASP.NET web apps. All the answers i’ve found on the internet don’t help me, because the IIS configuration of ASP.NET Core apps is so different than classic ASP.NET. For example, ASP.NET Core uses the Kestrel proxy, so many of the configurations relevant in ASP.NET are not in ASP.NET Core. I’ve basically tried everything i could possibly found on the Internet but none helped me. I whish it was as simple as enabling both anonymous and windows authentications on the app in IIS and that’s it, but I guess it will more work than that.

What is the procedure of enabling both these authentications in a single asp.net core web app?

2 Answers 2

IIS will act as a reverse proxy and will be responsible for setting and transmitting to Kestrel the Windows identity of the user. So first, set up IIS to allow both Windows and Anonymous Authentication:

Then, you need to change your web.config to ask IIS to transmit the Windows identity (in case one is found) to your ASP.NET Core application like that: https://stackoverflow.com/a/42163175/6827240

At this point, if you create a controller action with an «[Authorize]» attribute, HttpContext.User.Identity.Name; should have the value of the Windows identity used by your client. I replied to something similar here: NTLM authentication on specific route in ASP.NET Core

The good thing is that a standard controller action will still work if your client doesn’t pass along Windows identity token, while a protected one (using [Authorize] tag) will fail.

Средства безопасности ASP.NET. Аутентификация

Давайте теперь перейдём к описанию процесса аутентификации непосредственно в рамках среды ASP.NET, где для вашего выбора предоставлены 3 вида аутентификации:

* Аутентификация Windows
* Формой
* Паспортом

Аутентификация Windows:

Как и следует из названия, этот метод основывается на использовании учётных записей Windows. Такой метод уместен, если вы создаёте приложение для локальной сети, и все действующие учётные записи и группы хранятся на заранее определённом домене. При этом нужно быть очень осторожными, назначая права доступа пользователям, поскольку вы одновременно задаёте и права для работы в Windows. Для того, чтобы настроить ASP.NET на работу в режиме Windows аутентификации необходимо изменить файл настройки Web-проекта Web.config или при необходимости конфигурационный файл всего сервера, расположенный по адресу WINDOWS_FOLDERMicrosoft.NET

Framework.NET versionCONFIGMachine.config. В нашем примере мы будем работать исключительно с файлом проекта – Web.config, в котором вам нужно найти раздел authentication и присвоить его атрибуту mode значение Windows:


Теперь можно приступить непосредственно к программированию и реализации аутентификации на основе Windows. В помощь вам класс WindowsIdentity, который служит специально для работы с аутентификацией Windows. Вообще, для аутентификации, базирующейся на Windows, существуют два основных класса, предоставляемых .NET Framework:

* GenericIdentity – только реализует интерфейс IIdentity и не относится к какому-то определённому типу аутентификации
* WindowsIdentity – также является реализацией интерфейса IIdentity, но плюс ещё и включает методы, характерные только для аутентификации на основе Windows

Имя пользователя и группы хранятся в объекте WindowsIdentity в следующем формате: DOMAINUserName и DOMAINGroup соответственно. Исключение составляют лишь встроенные группы, например группа Administrators, для обращения к ней можно использовать строку подключения через WindowsIdentity: BUILTINAdministrators. Или же можно задать встроенную группу из перечисления System.Security.Principal.WindowsBuiltInRole.

Из рис. 1 видно, что объект WindowsIdentity позволяет получить имя пользователя; определить тип аутентификации; установить, была ли аутентификация проведена анонимно; также можно узнать, прошёл пользователь аутентификацию или нет, гость он или системный пользователь.

Рис. 1 – Объект WindowsIdentity

Поскольку в приложениях ASP.NET для обращения к объекту WindowsIdentity нужно будет выстроить следующую цепочку:

HttpContext.Current.User.Identity, то вы сможете также определить, к какой роли принадлежит текущий пользователь. Это можно достичь благодаря тому, что свойство User в этой цепочке реализует интерфейс Iprincipal, который позволяет определить принадлежность пользователя к определённой роли путём вызова функции IsInRole, имеющей следующий синтаксис:

Но давайте ненадолго отойдём от голой теории и попробуем реализовать практический пример. Для этого создайте новый проект ASP.NET Web Application и введите следующий код:
Default.aspx:

Если был выбран режим аутентификации Windows и настройки IIS не вызвали никаких конфликтных ситуаций, то вы получите соответствующую информацию о своём текущем пользователе. Если же поле имени пользователя и типа аутентификации оказались пустыми, то вам нужно просто настроить IIS, для этого выполните следующие действия:

1. Откройте IIS и найдите виртуальный каталог с этим приложением
2. Откройте окно свойств для этого каталога и перейдите во вкладку Безопасность каталога. В рамке Анонимный доступ и проверка подлинности нажмите кнопку Изменить…
3. В появившемся окне (рис. 2) снимите флажок Анонимный доступ

Рис. 2 – Настройка IIS

На этом мы закончим рассмотрение аутентификации на основе Windows и перейдём к аутентификации формой.

Аутентификация формой:

Аутентификация формой или, как её ещё называют аутентификация на основе Cookie-файлов, имеет ряд преимуществ над аутентификацией Windows.

* Во-первых, вы имеете возможность самому определить на свой вкус и цвет или на вкус и цвет пользователя внешний вид формы регистрации вместо однотипного окна регистрации Windows.
* Во-вторых, вы полностью контролируете вводимую информацию
* Сведения о пользователях теперь может храниться не только в SAM или Active Directory, но и в любом другом хранилище, в частности: база данных, каталог LDAP, XML-файлы или же обычный текстовый файл.
* Отпадает необходимость связывать политику безопасности сервера с политикой Web-приложения, поскольку, как уже было ранее сказано, все сведения о пользователях можно вынести в отдельное хранилище данных без каких-либо пересечений с учётными записями ОС.

В ASP.NET, что называется кодом ASP?

Подробнее на мой вопрос:

HTML и JavaScript называются «клиентским кодом».


С# и VB в файлах, находящихся за кодом, называются «серверным кодом».

Итак, что такое код inline-asp и ‘runat = server’, который называется?

Лучший термин, который я могу придумать, — это «код веб-форм».

5 ответов

14 Решение JoshBerke [2008-11-24 18:17:00]

Чтобы быть явным, Microsoft называет их встроенными блоками кода.

Они представляют собой кодовые блоки, встроенные в жизненный цикл страницы, вызываемые во время фазы Render.

Разделы ASP-страницы, начинающиеся с и заканчивающиеся на %> , являются фрагменты кода и

Защита ASP.NET приложений от взлома

ASP.NET MVC — не самый хайповый, но довольно популярный стек в среде веб-разработчиков. С точки зрения (анти)хакера, его стандартная функциональность дает тебе кое-какой базовый уровень безопасности, но для предохранения от абсолютного большинства хакерских трюков нужна дополнительная защита. В этой статье мы рассмотрим основы, которые должен знать о безопасности ASP.NET-разработчик (будь то Core, MVC, MVC Razor или Web Forms).

Примечание: мы продолжаем серию публикаций полных версий статей из журнала Хакер. Орфография и пунктуация автора сохранены.

Передаю слово автору.

Я думаю со мной согласятся многие, что ASP.NET MVC это стек довольно популярных технологий. Хоть технология давно не на пике хайпа, но спрос на .NET-овских веб-разработчиков довольно высок.

Вместе с тем, при разработке обязательно следует учитывать аспекты безопасности. Хоть какой-то функционал и спасает от классических всем известных атак, но от довольно большого количества хакерских трюков требуется дополнительная защита. Давайте рассмотрим популярные виды атак и способы защиты. Must know для ASP.NET разработчика (будь то Core, MVC, MVC Razor или WebForms).

Начнем со всем известных видов атак.

SQL Injection

Как ни странно, но в 2020-ом году Injection и в частности SQL Injection находится на первом месте среди Top-10 рисков безопасности OWASP (Open Web Application Security Project) Этот вид атаки подразумевает, что данные, введенные пользователем используются на серверной стороне в качестве параметров запроса.

Пример классической SQL инъекции скорее характерен именно для приложений Web Forms.
От атак помогает защититься использование параметров в качестве значений запроса:


Если вы разрабатываете MVC приложение, то Entity Framework прикрывает некоторые уязвимости. Для того, чтобы в MVC/EF приложении сработала SQL инъекция нужно умудриться. Однако это возможно если вы выполняете SQL код с помощью ExecuteQuery или вызываете плохо написанные хранимые процедуры.

Несмотря на то, что ORM позволяет избежать SQL Injection (за исключением приведенных выше примеров), рекомендуется ограничивать атрибутами значения, которые могут принимать поля модели, а значит и формы. Например, если подразумевается, что в поле может быть введен только текст, то с помощью Regex выражения укажите диапазон от ^[a-zA-Z]+$
Если в поле должны быть введены цифры, то укажите это как требование:

В WebForms ограничить возможные значения можно с помощью валидаторов. Пример:

Начиная с .NET 4.5 WebForms используют Unobtrusive Validation. А это значит, что не требуется написание какого-то дополнительного кода для проверки значения формы.

Валидация данных частности помочь защититься от еще одной всем известной уязвимости под названием Cross-Site Scripting (XSS).

Типичный пример XSS – добавление скрипта в комментарий или запись в гостевую книгу. Например, такого:

Как вы понимаете, в данном примере куки с вашего сайта передают в качестве параметра на какой-то хакерский сайт.

В Web Forms можно совершить ошибку с помощью примерно такого кода:

Идентификация в ASP.NET

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

Базовые понятия систем безопасности

Существуют два понятия, без которых невозможно обсуждение безопасности:

  • Аутентификация (authentication) – процесс определения личности пользователя, требующий верные логин и пароль, чтобы доказать, что он на самом деле тот, за кого себя выдает.
  • Авторизация (authorization) – это процесс выставления прав пользователю, прошедшего аутентификацию.

Способы аутентификации ASP.NET

Среда ASP.NET предоставляет три способа аутентификации:

  • Windows – аутентификация на основе системы диспетчера локальной сети Windows
    NT.
  • Forms – аутентификация на основе cookies.
  • Passport – аутентификация с помощью службы Passport от
    Microsoft.


Для того, чтобы выбрать тот или иной способ аутентификации потребуется внести изменения в файл конфигурации web.config следующим образом (я выбрал метод Forms — как наиболее актуальную при разработке web-приложений):

Вы можете справедливо заметить, что после внесения показанных выше изменений ничего особенного не происходит.
Эта ситуация возникает из-за того, что мы не запретили доступ анонимным пользователям. Для
такого запрета надо внести еще одно изменение в файле
web.config:

Этот знак — (?) — обозначает всех анонимных пользователей. А включая это правило вы запрещаете им доступ. Теперь каждый пользователь должен быть аутентифицирован, и каждый
не аутентифицированный будет перенаправлен на страницу регистрации.

После того, как вы выбрали режим аутентификации и правила авторизации, вам нужно создать страницу, которая запрашивает информацию у пользователя и решает, можно ли его аутентифицировать. Но об этом чуть позже. А пока я поясню, как мы это будем делать. Пароли и логины мы будем хранить,
например, в файле web.config. Пример того, как это сделать показан ниже:

Небольшие пояснения: параметр loginUrl в теге authentication указывает на страницу регистрации (по умолчанию – default.aspx), а параметр passwordFormat в теге credentials означает, что логин и пароль не зашифрованы (альтернативы – использовать алгоритмы шифрования SHA1 и MD5. О них мы поговорим позже ).

Для проверки верности логина и пароля будем использовать метод
FormsAuthentication. Authenticate(string login,string pass). А для регистрации пользователя в приложение ASP.NET путем создания cookie, и перенаправления на страницу, которая была изначально запрошена пользователем, будем использовать метод
FormsAuthentication. RedirectFromLoginPage(string login, bool CreatePersistentCookie) (второй параметр указывает на то,
каким будет посланный cookie – постоянный (срок годности
— 50 лет, значение true) или нет (false)).

Вот, собственно, и сам код страницы регистрации:

Обращение к элементу по его >14.12.2010, 23:53. Просмотров 5825. Ответов 10

14.12.2010, 23:53

Обращение к элементу списка по его номеру
Добрый вечер! Подскажите, пожалуйста, как обратиться к элементу списка с определённым номером.

Обращение к элементу в List, зная его индекс
Здравствуйте, у меня возникла проблема создан список public List

Что быстрее? Обращение к элементу массива или к элементу структуры?
Обращение к элементу массива или к элементу структуры? Экспериментирую с кодом и получается.

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

Обращение к элементу по ID
Здравствуйте, не пинайте сильно только начинаю изучать javascript, раньше программировал на Delphi.

14.12.2010, 23:57 2 14.12.2010, 23:58 [ТС] 3 12.12.2012, 14:50 4

12.12.2012, 14:50
12.12.2012, 15:26 5

привидение типов, и где искать этот контрол не хватает.

12.12.2012, 16:24 6

Спасибо, но не работает. Если я правильно понял в ((TextBox)this.Page.FindControl(«box» + Convert.ToString(num — 1))).Text;
(TextBox) — тип контрола ID которого («box» + Convert.ToString(num — 1)) и this.Page — место где ищем.
Искать нужно в Experience потому что код страницы :

12.12.2012, 17:04 7
17.12.2012, 11:48 8

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

Подведя итог, мне нужен способ узнать значение текстбокса, который был программно создан на странице. а не тот который статично на ней находиться. Кстати, если посмотреть на код страницы в браузере до того как я пытаюсь считать значения с текст бокса он там есть:

17.12.2012, 12:45 9
обсуждалось на форуме сотни раз. поиск рулит.
Комментарий модератора
Правила п.3.3
18.12.2012, 08:05 10
18.12.2012, 22:42 11

Потому что у вас срабатывает PostBack который заставляет заново рисовать страницу, в которой разумеется уже не будет ваших созданных кнопочек. Не нужно снова ничего рисовать — нужно в Page_Load смотреть режим обращения к странице (PostBack или нет) и не рисовать ничего снова и не затирать места где «рисуются» кнопки. Тогда все старые действия сохранятся.
При нажатии на кнопку нужно сделать так чтобы это не вызывало лавину событий в которых вы (как вы признались выше) ещё не сильно хорошо понимаете. Сделайте создание текстбоксов на JavaScripts. Тогда ваша страничка останется жива до того момента, когда вы решите нажать «красную кнопку» и прочитать/сохранить/обработать все эти значения.
Чтобы снова рисовать — нужно что-то читать по этим данным. Или из запроса придут все данные по тексбоксам (читать через Page.Form[«box0») или же создавать какие-то хранилища (типа сессий, вьюстейтов, баз данных и т.п.) Но это больше изврат.
FindControl в случае полной перерисовки страницы уже не найдёт ничего, даже если вы будете знать полное название своего текстбокса. Потому что ваших текстбоксов не будет существовать.

Все задачи «не выглядят тривиальными», просто потому что изменены условия задачи. Но в в целом все одно и тоже и методы решения одни и те же. Просто нужно применить знания в вашу ситуацию (которая с вашей стороны удобнее и понятнее смотрится, чем со стороны читателей).

Добавлено через 4 минуты

18.12.2012, 22:42
18.12.2012, 22:42

Обращение к элементу
Доброго времени суток ! Имеется код: foreach (var pb in Controls.OfType


Обращение к элементу по id
Есть одна страница. На ней есть слой с постоянно меняющимся id. Как обратиться к этому слою? id.

Обращение к элементу
Подскажите, как в Маткаде обратиться к конкретному элементу столбца. То есть есть столбец.

Что такое код asp anonymouspasswordsync

Без творческих поисков нет подлинного искусства.

( Дмитрий Шостакович )

Создание сайта :
— сегодня уже не роскошь, а необходимый инструмент для эффективной рекламы и продвижения своего товара, продукции, компании.
Созданный сайт, прежде всего, должен обладать профессиональным, стильным web дизайном и клиент всегда должен иметь возможность легко найти необходимую для него услугу или товар.
Мы занимаемся: (разработка сайта, создание сайтов, редизайн сайтов, предоставление хостинга, продвижение сайтов, оптимизация под поисковые системы, создание индивидуального стиля компании, графика, Flash, шаблоны сайтов)
Читать далее

Полезные вещички
HTML (учебник)
Web (веб) статьи
Раскрутка
Web-мастеру
Программы
Рассылка
Главная Студия Услуги НАШИ РАБОТЫ Цены Заказ Контакты Полезное
| Доменное имя | Разное php | Тонкости web | Выбираем хостинг | Библиотека |
Что такое ASP?

Что такое ASP?
Относительно недавно на смену статическим веб-страницам стали приходить динамические — то есть страницы, содержимое которых формируется в зависимости от действия пользователя. Соответственно, потребовался и новый класс приложений, способных формировать такие страницы. Эти приложения получили название серверов веб-приложений.
В начале 1997 года компания Microsoft выпустила 3-ю версию своего веб-сервера (Internet Information Server или IIS), в котором был реализован принципиально новый метод написания серверных приложений. Он получил название ASP (Active Server Pages — активные серверные страницы). Метод является функциональным расширением веб-сервера Microsoft и основан на использовании программных интерфейсов сервера.

По сути ASP — это обычные текстовые файлы (обычно с расширением имени asp), содержащие конструкции языка HTML и сценарии, написанные на языках JScript и/или VBScript, выполняющиеся на сервере наряду с обычным HTML-кодом.

Чем же хороша технология ASP? Прежде всего, возможностью исполнять сценарии на сервере. С помощью сценариев для сервера можно получить доступ к файлам, базам данных и другим ресурсам, хранимым на сервере, а также к централизованным ресурсам сервера, таким как электронная почта или факс-служба.

Функционирование в непротиворечивой и управляемой среде — еще одно преимущество выполнения сценариев на сервере. Ваш код выполняется только на одной версии единственного сервера, а не на множестве версий множества браузеров. Тем самым достигается так называемая кросс-платформенная совместимость.

Сценарии, расположенные в страницах ASP, могут быть не только серверными, но и клиентскими. Серверные сценарии выделяются специальным образом и исполняются на сервере, в то время как клиентские сценарии загружаются вместе с HTML-страницей на компьютер пользователя и работают под управлением браузера, не имея возможности выполнять какие-либо деструктивные функции на стороне клиента.

Новый год детям
Создание сайта. Участие в благотворительном фонде помощь детям.

Определение протокола для веб-сайта

Я использую IIS 6. Мне нужно определить, работает ли определенный сайт под http или https.

Я попытался извлечь все свойства с помощью «DirectoryEntry» из: IIS://localhost/W3SVC/1 (1 — это идентификатор сайта в этом примере)

Ниже приведены результаты. Если кто-либо знает какой-либо другой способ определения типа протокола IIS6 программно, используя «DirectoryEntry» — пожалуйста, дайте мне знать

Может ли кто-нибудь из них рассказать мне, является ли протокол Http или Https? Если нет . кто-нибудь знает, как проверить его с помощью C# на IIS 6?

Илон Маск рекомендует:  Визуальные эффекты
Понравилась статья? Поделиться с друзьями:
Кодинг, CSS и SQL