Результаты поиска
ASP.NET Карты Сайтов
Есть ли у кого-нибудь опыт создания поставщиков карт сайтов на основе SQL ASP.NET ?
У меня есть файл по умолчанию XML web.sitemap , который правильно работает с моими элементами управления меню и SiteMapPath , но мне нужен способ для пользователей моего сайта динамически создавать и изменять страницы.
Мне также нужно привязать разрешения на просмотр страниц к стандартной системе членства ASP.NET .
Как синхронизировать номер редакции SVN с моим веб-сайтом ASP.NET?
Переполнение стека имеет номер версии subversion внизу:
svn пересмотр: 679
Я хочу использовать такое автоматическое управление версиями с моими формами .NET Web Site/Application , Windows, WPD projects/solutions.
Как мне это реализовать?
Разбор чисел с плавающей запятой: есть ли алгоритм Catch All?
Одна из самых интересных частей мультикультурного программирования-это числовые форматы.
- Американцы используют 10,000.50
- Немцы используют 10.000,50
- Французы используют 10 000,50
Мой первый подход состоял бы в том, чтобы взять строку, разобрать ее назад, пока я не найду разделитель, и использовать его в качестве десятичного разделителя. В этом есть очевидный недостаток: 10.000 будет интерпретировано как 10.
Другой подход: если строка содержит 2 разных нечисловых символа, используйте последний в качестве десятичного разделителя и отбросьте остальные. Если у меня есть только один, проверьте, не происходит ли это несколько раз, и отбросьте его, если это происходит. Если он появляется только один раз, проверьте, есть ли после него 3 цифры. Если да, то отбросьте его, в противном случае используйте его в качестве десятичного разделителя.
Очевидным "best solution" было бы определить культуру пользователя или браузер, но это не работает, если у вас есть француз, использующий en-US Windows/Browser.
Может быть, фреймворк .net содержит какой-то мифический парсер с плавающей точкой черной магии, который лучше, чем Double.(Try)Parse() , пытается автоматически определить формат чисел?
Как написать на Web.Config в Medium Trust?
Загрузка моего первого приличного размера веб-приложения на мой общий хост обеспечила мне новый набор проблем, под которыми я подразумеваю бессонные ночи. Проблема заключалась в том, что я, безусловно, не разработал свое приложение для среднего доверия (или не имел понятия, что это такое.)
Я смягчил все проблемы, кроме одной.
Я написал установщик для администратора, чтобы иметь возможность указать свою строку подключения и другие настройки, но я не могу найти способ написать в web.config в среднем доверии. У кого-нибудь есть решение, или я должен просто поместить настройки в другой файл?
Контрольный список для IIS 6/ASP.NET Windows аутентификации?
У меня возникли проблемы с тем, чтобы мое приложение ASP.NET автоматически регистрировало пользователей на сайте интрасети, который я создаю. Независимо от того, что я гуглил или экспериментировал, всегда есть окно входа, отображаемое IE7.
Я установил режим аутентификации Windows в Web.config, отключил анонимный доступ и настроил правильный домен по умолчанию в IIS, но он все еще просит пользователя войти в систему и, что еще более раздражает, пользователь должен также предоставить домен ( DOMAIN\auser ), что вызывает проблемы с нетехническими посетителями. Спасибо Zeus за функциональность запоминания паролей.
Я не являюсь администратором сети, поэтому вполне возможно, что что-то в Active Directory настроено неправильно, или это может быть просто я пропустил что-то очень простое. Обратите внимание, что я не хочу выдавать себя за пользователя, мне просто нужно знать, что свойство IPrincipal.Name совпадает с действительной записью в моей базе данных пользователей, следовательно, аутентификация пользователя в моем приложении.
С этой целью было бы очень полезно иметь контрольный список всех требований к конфигурации для AD, ASP.NET и IIS, чтобы работать вместе таким образом в качестве справочного материала для отладки и, надеюсь, уменьшить некоторые трения пользователей.
Как получить значение built, encoded ViewState?
Мне нужно захватить base64-кодированное представление ViewState. Очевидно, что это будет доступно только на довольно позднем этапе жизненного цикла запроса, который составляет OK.
Например, если выходные данные страницы включают:
<input type="hidden" name="__VIEWSTATE"
id="__VIEWSTATE" value="/wEPDwUJODU0Njc5MD...==" />
Мне нужен способ на стороне сервера, чтобы получить значение "/wEPDwUJODU0Njc5MD...=="
Чтобы уточнить, мне нужно это значение, когда страница визуализируется, а не на PostBack. например, мне нужно знать значение ViewState, которое отправляется клиенту,а не ViewState, которое я получаю от них.
ASP.Net Пользовательская Проверка На Стороне Клиента
У меня есть пользовательская функция проверки в JavaScript в пользовательском элементе управления на веб-сайте .Net 2.0, которая проверяет, не превышает ли уплаченная плата причитающуюся сумму.
Я поместил код валидатора в файл ascx , а также попытался использовать Page.ClientScript.RegisterClientScriptBlock() и в обоих случаях срабатывает проверка, но не могу найти функцию JavaScript.
Вывод в консоли ошибок Firefox - это "feeAmountCheck is not defined" . Вот эта функция (она была взята непосредственно из firefox - >view source)
<script type="text/javascript">
function feeAmountCheck(source, arguments)
{
var amountDue = document.getElementById('ctl00_footerContentHolder_Fees1_FeeDue');
var amountPaid = document.getElementById('ctl00_footerContentHolder_Fees1_FeePaid');
if (amountDue.value > 0 && amountDue >= amountPaid)
{
arguments.IsValid = true;
}
else
{
arguments.IsValid = false;
}
return arguments;
}
</script>
Есть идеи, почему эта функция не найдена? Как я могу исправить это, не добавляя функцию на главную страницу или страницу потребления?
Регулирование полосы пропускания в IIS 6 по IP-адресу
Я пишу приложение, которое загружает большие файлы в фоновом режиме. Все клиенты регистрируются локально или через VPN. Когда они вошли в систему локально, я не хочу ограничивать загрузку. Однако я хотел бы ограничить загрузку до 10 KBps, когда пользователь подключен через VPN. Я могу различать этих пользователей по диапазону IP-адресов.
Поскольку это приложение AIR, я полагаю, что я буду дросселировать через серверную сторону, так как я могу сделать это либо с самого сервера (IIS 6), либо с веб-службы (asp.net / C#).
Дросселирование через IIS 6, похоже, работает нормально, но похоже, что это должно быть сделано по всему веб-сайту. Есть ли в любом случае, чтобы сделать это через IP? Или мне придется все это подстроить .NET?
ASP.NET встроенный профиль пользователя против старого стиля пользовательского класса / таблиц
Я ищу руководство по лучшей практике использования функции профиля в ASP.NET.
Как вы решаете, что должно храниться во встроенном профиле пользователя, или если вы должны создать свою собственную таблицу базы данных и добавить столбец для нужных полей? Например, у пользователя есть код zip, должен ли я Сохранить код zip в своей собственной таблице или добавить его в профиль web.config xml и получить доступ к нему через механизм профиля пользователя ASP.NET?
Плюсы / минусы, о которых я могу думать прямо сейчас, заключаются в том, что, поскольку я не очень хорошо знаю профиль (сейчас это немного Матрица), я, вероятно, могу делать все, что захочу, если я пойду по маршруту таблицы (например, SQL, чтобы получить всех пользователей в том же коде zip, что и текущий пользователь). Я не знаю, смогу ли я сделать то же самое, если я использую профиль ASP.NET.
Тройные Кавычки? Как я могу разграничить строковый параметр databound Javascript в ASP.NET?
Как я могу разграничить строковый параметр Javascript с привязкой к данным в событии anchor OnClick ?
- У меня есть тег anchor в элементе управления ретранслятором ASP.NET.
- Событие
OnClickanchor содержит вызов функции Javascript. - Функция Javascript принимает строку в качестве входного параметра.
- Строковый параметр заполняется привязанным к данным значением из ретранслятора.
Мне нужен "double quotes" для Container.DataItem .
Мне нужен 'single quotes' для OnClick .
А мне еще нужен один разделитель (тройные кавычки?) для входного строкового параметра вызова функции Javascript.
Поскольку я не могу использовать 'single quotes' снова, как я могу гарантировать, что функция Javascript знает, что входной параметр является строкой, а не целым числом?
Без дополнительных кавычек вокруг входного строкового параметра функция Javascript думает, что я передаю целое число.
В anchor:
<a id="aShowHide" onclick='ToggleDisplay(<%# DataBinder.Eval(Container.DataItem, "JobCode") %>);' >Show/Hide</a>
а вот и Javascript-й:
<script language="JavaScript" type="text/javascript">
/* Shows/Hides the Jobs Div */
function ToggleDisplay(jobCode)
{
/* Each div has its ID set dynamically ('d' plus the JobCode) */
var elem = document.getElementById('d' + jobCode);
if (elem)
{
if (elem.style.display != 'block')
{
elem.style.display = 'block';
elem.style.visibility = 'visible';
}
else
{
elem.style.display = 'none';
elem.style.visibility = 'hidden';
}
}
}
</script>
Как сделать RedirectToAction в ASP.NET MVC без потери данных запроса
Использование ASP.NET MVC существуют ситуации (например, подача формы), которые могут потребовать RedirectToAction .
Одна из таких ситуаций возникает, когда вы сталкиваетесь с ошибками проверки после отправки формы и должны перенаправить обратно в форму, но хотели бы, чтобы URL отражал URL формы, а не страницу действий, на которую она отправляется.
Поскольку я требую, чтобы форма содержала исходные данные POST ed, для удобства пользователя, а также для целей проверки, как я могу передать данные через RedirectToAction() ? Если я использую параметр viewData, мои параметры POST будут изменены на параметры GET .
Подходят ли когда-нибудь несколько классов DataContext?
Чтобы полностью использовать LinqToSql в приложении ASP.net 3.5, необходимо создать классы DataContext (что обычно делается с помощью конструктора в VS 2008). С точки зрения UI, DataContext-это дизайн разделов вашей базы данных, которые вы хотели бы предоставить через LinqToSql, и является неотъемлемой частью в настройке функций ORM LinqToSql.
Мой вопрос: я настраиваю проект, который использует большую базу данных, где все таблицы связаны каким-то образом через внешние ключи. Моя первая склонность-сделать один огромный класс DataContext, который моделирует всю базу данных. Таким образом, я мог бы теоретически (хотя я не знаю, понадобится ли это на практике) использовать внешние ключевые соединения, которые генерируются через LinqToSql, чтобы легко переходить между связанными объектами в моем коде, вставлять связанные объекты и т. д.
Однако после некоторых размышлений я теперь думаю, что может быть более целесообразно создать несколько классов DataContext, каждый из которых относится к определенному пространству имен или логическому взаимосвязанному разделу в моей базе данных. Моя главная проблема заключается в том, что создание и удаление одного огромного класса DataContext все время для отдельных операций, связанных с конкретными областями базы данных, будет налагать ненужное наложение на ресурсы приложения. Кроме того, легче создавать и управлять меньшими файлами DataContext, чем одним большим. То, что я потеряю, - это то, что будут некоторые удаленные разделы базы данных, которые не будут доступны для навигации через LinqToSql (даже если цепочка отношений соединяет их в реальной базе данных). Кроме того, будут существовать некоторые классы таблиц, которые будут существовать в более чем одном DataContext.
Любые мысли или опыт о том, являются ли множественные DataContexts (соответствующие пространствам имен DB) подходящими вместо (или в дополнение к) одному очень большому классу DataContext (соответствующему всему DB)?
Visual Studio " не удалось запустить отладку на веб-сервере. Веб-сервер не ответил своевременно."
Я получаю следующую ошибку довольно регулярно при компиляции в Visual Studio и запуске моего веб-приложения:
"Не удалось запустить отладку на веб-сервере. Веб-сервер не ответил своевременно. Это может быть связано с тем, что другой отладчик уже подключен к веб-серверу."
Обычно это происходит после того, как вы уже отладили приложение один раз. Из командной строки я запускаю "iisreset /restart"", и это устраняет проблему.
Как я могу предотвратить это в первую очередь?
Каковы эффективные варианты встраивания видео в веб-сайт ASP.NET?
Быстрый взгляд на современный интернет, казалось бы, указывает на то, что Adobe Flash является очевидным выбором для встраивания видео в веб-страницу. Является ли это точным, или это другие эффективные варианты? Влияет ли выбор ASP.NET в качестве платформы на это решение?
Лучше ли создавать классы моделей или придерживаться общего класса утилиты базы данных?
У нас есть простой служебный класс в доме для наших вызовов базы данных (легкая оболочка вокруг ADO.NET), но я думаю о создании классов для каждого database/object. было бы разумно сделать это, или это только выиграло бы, если бы мы использовали полную структуру MVC для ASP.NET?
Итак, у нас есть это:
SQLWrapper.GetRecordset(connstr-alias, sql-statement, parameters);
SQLWrapper.GetDataset(connstr-alias, sql-statement, parameters);
SQLWrapper.Execute(connstr-alias, sql-statement, parameters);
Думая о том, чтобы сделать это:
Person p = Person.get(id);
p.fname = "jon";
p.lname = "smith";
p.Save();
или для нового рекорда -
Person p = new Person();
p.fname = "Jon";
p.lname = "Smith";
p.Save();
p.Delete();
Будет ли это умно, или это будет перебор? Я вижу выгоду для повторного использования, изменения базы данных и maintenance/readability.
Обновление до ASP.NET 3.x
В настоящее время я знаю, что ASP.NET 2.0 отсутствует и что есть 3.x версии фреймворка .Net.
Можно ли обновить мой веб-сервер ASP.NET до версии 3.x платформы .Net?
Однако я попробовал это сделать, когда выбирал, какую версию .Net framwork использовать в IIS (вкладка ASP.NET), только версии 1.1 и 2.0 показывают.
Есть ли работа вокруг?
Использование ConfigurationManager для загрузки конфигурации из произвольного расположения
Я разрабатываю компонент доступа к данным, который будет использоваться на веб-сайте, содержащем смесь классических страниц ASP и ASP.NET, и мне нужен хороший способ управления его настройками конфигурации.
Я хотел бы использовать пользовательский ConfigurationSection, и для страниц ASP.NET это отлично работает. Но когда компонент вызывается через COM interop с классической страницы ASP, он не работает в контексте запроса ASP.NET и поэтому не имеет никакого представления о web.config.
Есть ли способ сказать ConfigurationManager , чтобы просто загрузить конфигурацию из произвольного пути (например, ..\web.config , если мой assembly находится в папке /bin )? Если есть, то я думаю, что мой компонент может вернуться к этому, если по умолчанию ConfigurationManager.GetSection возвращает null для моего пользовательского раздела.
Любые другие подходы к этому были бы приветствованы!
Должен ли я использовать имя пользователя или ID пользователя для ссылки на аутентифицированных пользователей в ASP.NET
Поэтому в моем простом учебном веб-сайте я использую встроенную систему аутентификации ASP.NET.
Теперь я добавляю таблицу пользователей, чтобы сохранить такие вещи, как его zip, DOB и т. д. Мой вопрос таков:
- В новой таблице ключом должно быть имя пользователя (строка) или пользователь ID, который является тем номером GUID, который они используют в
asp_ tables. - Если лучше всего использовать этот уродливый guid, кто-нибудь знает, как его получить? похоже, он не так легко доступен, как имя (
System.Web.HttpContext.Current.User.Identity.Name) - Если вы предлагаете мне не использовать ни один из них (ни guid, ни поля userName, предоставляемые ASP.NET authentication), то как это сделать с ASP.NET authentication? Один из вариантов, который мне нравится, - это использовать адрес email пользователя в качестве логина, но как сделать так, чтобы система аутентификации ASP.NET использовала адрес email вместо имени пользователя? (или там нечего делать, это просто я решил, что я "know" userName на самом деле адрес email?
Пожалуйста, обратите внимание:
- Я не спрашиваю о том, как получить GUID в .NET, я просто ссылаюсь на столбец userID в
asp_ tablesкак guid. - Имя пользователя является уникальным при проверке подлинности ASP.NET.
Уменьшить размер элемента управления меню ASP.NET (без сторонних библиотек)
У меня есть довольно простое управление меню ASP.NET 2.0 с использованием файла sitemap и обрезки безопасности. Есть только 21 вариант меню, но результаты HTML меню-это колоссальные 14k. сайт размещен в интрасети нашей компании и должен быть сервером для людей по всему миру с ограниченной пропускной способностью, поэтому я хотел бы уменьшить размер меню.
Каков наилучший способ сделать это? У кого-нибудь есть хорошая рекомендация? У меня есть следующие ограничения:
- Решение не должно ссылаться на какие-либо файлы 3-й части DLL (получение одобрения было бы кошмаром)
- Приходится работать с IE 6
CSS и JavaScript в порядке, пока они работают с IE 6.
Версия ASP.NET от Joomla
Кто-нибудь когда-нибудь находил/использовал приложение ASP.NET, подобное Joomla?
Мне нужно настроить быстрый и грязный CMS на сервере Windows, и наш клиент не хочет, чтобы мы использовали что-то другое, кроме ASP.NET.
Уменьшить размер элемента управления меню ASP.NET (без сторонних библиотек)
У меня есть довольно простое управление меню ASP.NET 2.0 с использованием файла sitemap и обрезки безопасности. Есть только 21 вариант меню, но результаты HTML меню-это колоссальные 14k. сайт размещен в интрасети нашей компании и должен быть сервером для людей по всему миру с ограниченной пропускной способностью, поэтому я хотел бы уменьшить размер меню.
Каков наилучший способ сделать это? У кого-нибудь есть хорошая рекомендация? У меня есть следующие ограничения:
- Решение не должно ссылаться на какие-либо файлы 3-й части DLL (получение одобрения было бы кошмаром)
- Приходится работать с IE 6
CSS и JavaScript в порядке, пока они работают с IE 6.
Версия ASP.NET от Joomla
Кто-нибудь когда-нибудь находил/использовал приложение ASP.NET, подобное Joomla?
Мне нужно настроить быстрый и грязный CMS на сервере Windows, и наш клиент не хочет, чтобы мы использовали что-то другое, кроме ASP.NET.
Как настроить переключатель CSS
Я работаю над сайтом, который будет переключаться на новый стиль на определенную дату. Сайт построен в семантических HTML и CSS, поэтому изменение должно просто потребовать изменения ссылки CSS. Я работаю с дизайнером, которому нужно будет видеть, как он выглядит, а также с клиентом, которому нужно будет просматривать обновления контента в текущем виде, а также прогресс дизайна в новом виде.
Я планирую использовать значение magic querystring и / или ссылку javascript в нижнем колонтитуле, которая записывает cookie для выбора новой страницы CSS. Мы работаем в ASP.NET 3.5. Есть рекомендации?
Я должен упомянуть, что мы используем условные комментарии IE для поддержки IE8, 7 и 6. Я могу создать функцию, которая выполняет замену:
<link href="Style/<% GetCssRoot() %>.css" rel="stylesheet" type="text/css" />
<!--[if lte IE 8]>
<link type="text/css" href="Style/<% GetCssRoot() %>-ie8.css" rel="stylesheet" />
<![endif]-->
<!--[if lte IE 7]>
<link type="text/css" href="Style/<% GetCssRoot() %>-ie7.css" rel="stylesheet" />
<![endif]-->
<!--[if lte IE 6]>
<link type="text/css" href="Style/<% GetCssRoot() %>-ie6.css" rel="stylesheet" />
<![endif]-->
Как я могу опубликовать и затем перенаправить на внешний URL из ASP.Net?
ASP.NET серверные элементы управления обратной связью на свою собственную страницу. Это приводит к тому, что вы хотите перенаправить пользователя на внешнюю страницу, но по какой-то причине (например, для аутентификации) должны разместить на этой странице сообщение.
HttpWebRequest отлично работает, если вы не хотите перенаправлять, а JavaScript в некоторых случаях подходит, но может стать сложным, если вам действительно нужен код на стороне сервера,чтобы собрать данные для публикации.
Так как же вы одновременно отправляете сообщение на внешний URL и перенаправляете пользователя на результат из вашего кода ASP.NET codebehind?
Как указать javascript для запуска при отображении ModalPopupExtender
У ASP.NET AJAX ModalPopupExtender есть свойства OnCancelScript и OnOkScript , но у него, похоже, нет свойства OnShowScript . Я бы хотел указать функцию javascript для запуска при каждом появлении всплывающего окна.
В прошлых ситуациях я устанавливал TargetControlID на фиктивный элемент управления и предоставлял свой собственный элемент управления, который сначала выполняет некоторый код JS, а затем использует методы JS для отображения всплывающего окна. Но в этом случае я показываю всплывающее окно как из клиентского, так и из серверного кода.
Кто-нибудь знает способ сделать это?
BTW, мне это было нужно, потому что у меня есть textbox в модале, который я хочу сделать редактором TinyMCE. Но сценарий TinyMCE init не работает с невидимыми текстовыми полями, поэтому мне пришлось найти способ запустить его в то время, когда модальный был показан
В ASP.NET MVC я сталкиваюсь с ошибкой неправильного типа при отображении пользовательского элемента управления с правильным типизированным объектом
Я сталкиваюсь с ошибкой формы: "элемент модели, переданный в словарь, имеет тип FooViewData, но этот словарь требует элемента модели типа bar", хотя я передаю объект правильного типа (bar) для типизированного пользовательского элемента управления.
Лучший макет фреймворка, который может делать как WebForms, так и MVC?
Я получаю больше рабочего процесса TDD и имею сочетание приложений MVC и asp.net Web Forms.
MOQ рекомендуется для MVC.
Я использовал Rhino для веб-форм.
У кого-нибудь есть лучшая практика для того, чтобы иметь макет 1 framework для обоих?
Каковы полезные новые функции ASP.NET в .NET Framework 3.5?
Я постоянно обновлял новые функции в языке C#, поскольку он перешел с версии 1 на версию 3. Я не очень хорошо справлялся с тем, чтобы быть в курсе событий с ASP.NET. Я чувствую, что некоторые функции post version 1 не так хороши (например, фреймворк AJAX) или просто не так полезны для меня (например, фреймворк членства). Может ли кто-нибудь порекомендовать какие-либо новые функции killer ASP.NET, которые могли бы остаться незамеченными?
Проверка данных разнесенной формы в структуре ASP.NET MVC
Я играл с фреймворком ASP.NET MVC, и одна вещь, которая действительно сбивает меня с толку, - это то, как я должен выполнять проверку данных опубликованных форм на стороне сервера. Я предполагаю, что не отправлю сообщение обратно в тот же URL, но если это не так, как я могу повторно отобразить форму с введенными данными и сообщениями об ошибках? Кроме того, куда должна идти логика проверки? В модели или контроллере? Это, по-видимому, одна из немногих областей, где веб-формы намного сильнее (мне не хватает средств проверки).
ASP.NET кэширование
Недавно я исследовал возможности кэширования в ASP.NET.
Я свернул свой собственный "Cache", потому что я не знал ничего лучше, это выглядело немного так:
public class DataManager
{
private static DataManager s_instance;
public static DataManager GetInstance()
{
}
private Data[] m_myData;
private DataTime m_cacheTime;
public Data[] GetData()
{
TimeSpan span = DateTime.Now.Substract(m_cacheTime);
if(span.TotalSeconds > 10)
{
// Do SQL to get data
m_myData = data;
m_cacheTime = DateTime.Now;
return m_myData;
}
else
{
return m_myData;
}
}
}
Таким образом, значения хранятся некоторое время в singleton, и когда время истекает, значения обновляются. Если время не истекло, и запрос на данные выполнен, то будут возвращены сохраненные значения в поле.
Каковы преимущества использования реального метода (http://msdn.microsoft.com/en-us/library/aa478965.aspx ) вместо этого?
И DefaultEvent ASP.NET UserControl по
Контур
OK, я гуглил это и уже ожидал большой жир NO! ! Но я подумал, что должен спросить, так как я знаю, что иногда могут быть странные маленькие gem знания, скрывающиеся в головах людей ^_^
Я работаю над некоторыми упражнениями в книге для изучения, и это конкретное упражнение-пользовательские элементы управления. Я собрал элемент управления и хотел бы установить для него DefaultEvent (сделав это для предыдущих элементов управления), поэтому, когда я дважды щелкаю по нему, созданное событие по умолчанию-это то, что я указываю.
NOTE: это стандартный пользовательский элемент управления (.ascx), NOT пользовательский визуализированный элемент управления.
текущий код
Вот определение события класса &:
[System.ComponentModel.DefaultEvent("OKClicked")]
public partial class AddressBox : System.Web.UI.UserControl
{
public event EventHandler OKClicked;
текущий результат
Теперь, когда я дважды щелкаю элемент управления, когда он находится на странице ASPX, создается следующее:
protected void AddressBox1_Load(object sender, EventArgs e)
{
}
Не совсем то, что я ожидал! Итак, мой вопрос:
Можно ли определить DefaultEvent для UserControl? Это хак? Если это не поддерживается, почему?
Примечание: как мы помещаем подчеркивания в код? Кажется, я не могу поставить и избежать char?
Варианты лицензирования с открытым исходным кодом для приложения ASP.NET MVC?
Я работаю над личным проектом в ASP.NET MVC, который планирую сделать открытым исходным кодом. В прошлом у меня было открыто довольно много PHP сценариев и UNIX-основанных материалов. Для них я обычно шел с лицензией стиля BSD/Apache, если только я не включал библиотеку, которая препятствовала этому. На стороне Linux/PHP вещей это обычно означало что-то, что было GPL-ed, таким образом, все еще приводя к довольно четкой договоренности.
Однако для этого проекта я пытаюсь выяснить, какие лицензии вообще можно применить к этому проекту, и не нахожу никакого хорошего ресурса, чтобы ответить на этот вопрос. Я знаю, что единственный "real" ответ на этот вопрос будет связан с адвокатом. Однако, поскольку это не то, что принесет доход, если я собираюсь запустить $1000 в проект, я скорее найму графического дизайнера или эксперта по юзабилити, чтобы получить пропуск в приложении, чем заплачу адвокату.
Этот конкретный проект также использует Subsonic для доступа к базе данных и Argotic для разбора RSS, что еще больше усложняет проблему.
Я знаю, что мне разрешено использовать все эти части и что я могу перераспределить свой проект, который использует их все. Однако то, что у меня осталось, - это путаница в отношении того, что полученный проект может/должен быть лицензирован.
Я, вероятно, могу договориться о своем пути через лабиринт для бит Subsonic и Argotic, потому что они уже находятся под лицензиями с открытым исходным кодом, но я не могу быть единственным, кто пытается выяснить, какую лицензию я могу применить к проекту, который я пишу поверх ASP.NET MVC.
В ответ на комментарии:
Я ни в чем не виноват. Я просто пытаюсь вложить ту же заботу в лицензирование и распространение этого конечного приложения, что и в архитектуру и разработку его. Кроме того, я наблюдал, как разрушаются жизни из-за того, что сегодня не обращал внимания на возможно византийские законы об интеллектуальной собственности в книгах.
И, честно говоря, я действительно получил неприятное письмо в прошлом от адвоката компонента с открытым исходным кодом, который я включил в свой собственный проект с открытым исходным кодом, но использовал лицензию, которой они не были довольны.
К сожалению, "an open-source license" не является более конкретным в юридическом смысле, чем выражение "just use a web programming language and you'll be fine". GPL явно является одной из самых популярных лицензий с открытым исходным кодом, а также одной из немногих, которые, на первый взгляд, не могут быть применены к ASP.NET MVC приложениям. Мне интересно, существует ли существующая лицензия, которая может быть "compiled" с другими лицензиями компонентов, которые я использую, не вызывая юридической ошибки "compiler".
Я не говорю, что ответ прост (это не так). Я задал этот вопрос, потому что искренне заинтересован в ответе, который приходит с точки зрения тщательного изучения вопроса. Когда я впервые опубликовал его, я полностью ожидал, что он останется без ответа в течение длительного времени, потому что это не простой вопрос.
ASP.NET Прокси-Приложение
Позвольте мне попытаться объяснить, что мне нужно. У меня есть сервер, который виден из интернета. Мне нужно создать приложение ASP.NET, которое получает запрос веб-сайта и отправляет его на внутренний сервер, а затем получает ответ и публикует информацию. Для клиента это должно быть абсолютно прозрачно.
По разным причинам я не могу перенаправить порт на внутренний сервер. Что я могу сделать, но не знаю, как - может быть, ответ есть-это создать новый веб-сайт, который будет размещен на другом сервере.
Ускорение работы веб-сайта или приложения ASP.Net
У меня есть Ajax.Net включен ASP.Net 2.0 веб-сайт. Хостинг как для сайта, так и для базы данных находится вне моего контроля, как и схема базы данных. При тестировании на аппаратном обеспечении я действительно контролирую сайт хорошо работает, однако на аппаратном обеспечении клиента есть заметные задержки при перезагрузке или смене страниц.
Что я хотел бы сделать, так это сделать мою заявку как можно более компактной и быстрой, когда я ее доставлю. Одна из идей заключается в том, чтобы установить даты истечения срока действия для всех статических ресурсов сайта, чтобы они не вызывались при загрузке страницы. Под ресурсами я подразумеваю изображения, связанные таблицы стилей и исходные файлы JavaScript. Есть ли простой способ сделать это?
Какие еще существуют способы оптимизации веб-сайта .Net?
UPDATE: Я запустил YSlow на сайте, и области, где я получаю удар сильнее всего, находятся в количестве загружаемых JavaScript и таблиц стилей (23 JS файла и 5 таблиц стилей). Все, кроме одного (основная таблица стилей), были вставлены Ajax.net и Asp. Почему их так много?
Очистка Кэша страниц в ASP.NET
Для моего блога я хочу использовать выходной кэш, чтобы сохранить кэшированную версию пертикулярного поста примерно на 10 минут, и это нормально...
<%@OutputCache Duration="600" VaryByParam="*" %>
Однако, если кто-то публикует комментарий, Я хочу очистить кэш, чтобы страница была обновлена и комментарий был виден.
Как мне это сделать в ASP.Net C#?
Как вы олицетворяете пользователя Active Directory в Powershell?
Я пытаюсь запустить powershell команды через веб-интерфейс (ASP.NET/C#) для создания почтовых ящиков/etc на Exchange 2007. Когда я запускаю страницу с помощью Visual Studio (Cassini), страница загружается правильно. Однако, когда я запускаю его на IIS (v5.1), я получаю ошибку "unknown user name or bad password". Самая большая проблема, которую я заметил, заключалась в том, что Powershell был зарегистрирован как ASPNET вместо моей учетной записи Active Directory. Как заставить мой сеанс Powershell пройти проверку подлинности с другой учетной записью Active Directory?
В принципе, сценарий, который у меня есть до сих пор, выглядит примерно так:
RunspaceConfiguration rc = RunspaceConfiguration.Create();
PSSnapInException snapEx = null;
rc.AddPSSnapIn("Microsoft.Exchange.Management.PowerShell.Admin", out snapEx);
Runspace runspace = RunspaceFactory.CreateRunspace(rc);
runspace.Open();
Pipeline pipeline = runspace.CreatePipeline();
using (pipeline)
{
pipeline.Commands.AddScript("Get-Mailbox -identity 'user.name'");
pipeline.Commands.Add("Out-String");
Collection<PSObject> results = pipeline.Invoke();
if (pipeline.Error != null && pipeline.Error.Count > 0)
{
foreach (object item in pipeline.Error.ReadToEnd())
resultString += "Error: " + item.ToString() + "\n";
}
runspace.Close();
foreach (PSObject obj in results)
resultString += obj.ToString();
}
return resultString;
RSS каналы в ASP.NET MVC
Как бы вы рекомендовали обрабатывать каналы RSS в ASP.NET MVC? Используя стороннюю библиотеку? Используя RSS-й материал в BCL-м? Просто создаете представление RSS, которое отображает XML? Или что-то совсем другое?
ASP.Net MVC отображение маршрута
Я новичок в MVC (и ASP.Net маршрутизации). Я пытаюсь сопоставить *.aspx с контроллером под названием PageController .
routes.MapRoute(
"Page",
"{name}.aspx",
new { controller = "Page", action = "Index", id = "" }
);
Не будет ли код выше карты *.aspx до PageController ? Когда я запускаю это и набираю любую страницу .aspx, я получаю следующую ошибку:
Контроллер для пути '/Page.aspx' не может быть найден или он не реализует интерфейс IController. Имя параметра: controllerType
Есть ли что-то, чего я здесь не делаю?
Как вы регистрируете ошибки (исключения) в ваших приложениях ASP.NET?
Я ищу лучший способ регистрации ошибок в приложении ASP.NET. Я хочу иметь возможность получать электронные письма, когда в моем приложении возникают ошибки, с подробной информацией об исключении и текущем запросе.
В моей компании мы привыкли иметь свой собственный ErrorMailer, ловя все в Global.asax Application_Error. Он был "Ok", но не очень гибким и настраиваемым.
Мы недавно переключились на NLog. Это гораздо более настраиваемо, мы можем определить различные цели для ошибок, фильтровать их, буферизировать их (еще не пробовали). Это очень хорошее улучшение.
Но недавно я обнаружил, что для этой цели в фреймворке .Net есть целое пространство имен : System.Web.Management , и его можно настроить в разделе healthMonitoring web.config.
Вы когда-нибудь работали с мониторингом здоровья .Net? Каково ваше решение для регистрации ошибок?
Проблема привязки данных ASP.Net AJAX toolkit MaskedEditExtender
У меня есть база данных, которая содержит дату, и мы используем MaskedEditExtender (MEE) и MaskedEditValidator, чтобы убедиться, что даты подходят. Тем не менее, мы хотим, чтобы администраторы могли войти и изменить данные (в частности, дату), если это необходимо.
Как я могу предварительно заполнить поле MEE значением базы данных, когда данные отображаются на странице? Я попытался использовать 'bind' в свойстве 'InitialValue', но он не заполняет textbox.
Спасибо.
Учитывая N2 CMS, но беспокоился о производительности. Оправдано ли это?
Hy, кто-нибудь работал с системой управления контентом N2( http://www.codeplex.com/n2 ). Если да, то как он работает, производительность мудрая(при большой нагрузке)? Это кажется довольно простым и легким в использовании.
Адриан
445   5   11:04, 24th August, 2020
Как я могу удалить узлы из SiteMapNodeCollection?
У меня есть ретранслятор, который перечисляет все дочерние страницы web.sitemap на странице ASP.NET. Его DataSource - это SiteMapNodeCollection . Но я не хочу, чтобы моя страница регистрационной формы появилась там.
Dim Children As SiteMapNodeCollection = SiteMap.CurrentNode.ChildNodes
'remove registration page from collection
For Each n As SiteMapNode In SiteMap.CurrentNode.ChildNodes
If n.Url = "/Registration.aspx" Then
Children.Remove(n)
End If
Next
RepeaterSubordinatePages.DataSource = Children
Метод SiteMapNodeCollection.Remove() выбрасывает a
NotSupportedException: "Collection is read-only".
Как я могу удалить узел из коллекции до DataBinding повторителя?
.NET VirtualPathProviders и предварительная компиляция
Мы работали над приложением, которое довольно сильно полагается на VirtualPathProviders в ASP.NET.
Мы только что пришли, чтобы поставить эту штуку на живой сервер, чтобы продемонстрировать ее, и похоже, что VirtualPathProviders просто не работает , когда сайт предварительно скомпилирован!!
Я смотрел на обходной путь, который был опубликован здесь: http://sunali.com/2008/01/09/virtualpathprovider-in-precompiled-web-sites/, но до сих пор мне не удалось заставить его работать! (Ну - это прекрасно работает на сервере веб-разработки visual studio - только не на нашем IIS box-опять же!).
У кого-нибудь здесь есть еще какая-нибудь информация по этой проблеме? Это зафиксировано в .NET v3.5 (мы сейчас строим для v2.0)?
Решение для репликации сеансов FOSS ASP.Net?
Я искал (с небольшим успехом) свободное/открытое решение для кластеризации сеансов и репликации для asp.net. Я столкнулся с обычными подозреваемыми (indexus sharedcache, memcached), однако у каждого из них есть некоторые ограничения.
- Indexus - очень незрелая, заглушенная реализация интерфейса сеанса. Однако в остальном это отличное решение для кэширования.
- Memcached -небольшая поддержка репликации/failover без перехода на серверную часть БД. Несколько проектов SF.Net-все прерваны на ранних стадиях... ничего такого, что, по-видимому, имеет какую-то тягу, и тот, который, по-видимому, стал полностью коммерческим.
- Microsoft Velocity -не OSS, но вроде неплохо. К сожалению, я не видел, где CTP1 поддерживает failover,и нет четкой дорожной карты для этого. Я боюсь,что этот может упасть в эфир, как и многие другие проекты MS dev.
Я достаточно привык к миру Java, где считается само собой разумеющимся, что многие решения подобных проблем будут доступны из мира FOSS.
Существуют ли какие-либо подходящие альтернативы в мире .Net?
536   4   15:11, 2nd August, 2020
Почему мое приложение asp.net выбрасывает ThreadAbortException?
само собой разумеющийся вопрос.
Почему эта штука пузырится в моей попытке поймать даже тогда, когда ничего не случилось?
Почему он появляется в моем журнале сотни раз?
Я знаю, что это новый вопрос, но если этот сайт собирается получить рейтинг поиска и привлечь новых пользователей, мы должны спросить их
Почему поставщик профилей не был встроен в веб-приложения?
Если вы создадите проект веб-файла ASP.NET, у вас будет прямой доступ к информации профиля в файле web.config. Если вы конвертируете это в веб-приложение и используете ProfileCommon и т. д. затем вам нужно перепрыгнуть через целую кучу обручей, чтобы заставить ваше веб-приложение работать.
Почему поставщик профилей не был встроен в проекты веб-приложений ASP.NET, как это было с проектами веб-файлов?
Могу ли я создать ListView с динамическим GroupItemCount?
Я использую новый элемент управления ASP.Net ListView для перечисления элементов базы данных, которые будут сгруппированы в разделы на основе одного из их столбцов, например:
region1
store1
store2
store3
region2
store4
region3
store5
store6
Возможно ли это сделать с ListView-х GroupItemTemplate? Каждый пример, который я видел, использует статическое количество элементов в группе, что не будет работать для меня. Я неправильно понимаю цель GroupItem?
Как я могу передать данные со страницы aspx в модальное всплывающее окно ascx?
Я довольно новичок в ASP.NET и пытаюсь узнать, как это делается. Я пришел из фона C#, так что часть кода позади легко, но думать, как веб-разработчик незнаком.
У меня есть страница aspx, которая содержит сетку флажков. У меня есть кнопка, которая кодируется с помощью события Button_Click, чтобы собрать список проверяемых строк и создать переменную сеанса из этого списка. На эту же кнопку ссылается (через TargetControlID) моя страница ascx ModalPopupExtender, которая управляет панелью на странице ascx.
При нажатии на кнопку открывается модальное всплывающее окно, но событие Button_Click никогда не срабатывает, поэтому модальное окно не получает свои данные сеанса.
Поскольку эти две страницы разделены, я не могу вызвать ModalPopupExtender из кода aspx.cs, я не могу добраться до списка флажков из кода ascx.cs, и я не вижу способа заполнить мою переменную сеанса, а затем программно активировать какую-то другую скрытую кнопку или элемент управления, который затем откроет мое модальное всплывающее окно.
Есть какие-нибудь мысли?
IronPython и ASP.NET
Кто-нибудь построил сайт с IronPython и ASP.NET. Каковы были ваши впечатления и готова ли комбинация к прайм-тайму?
Лучший способ пользовательского редактирования записей в ASP.NET?
Я исхожу из фона Rails и делаю некоторую работу над проектом ASP.NET (не ASP MVC). Вопрос новичка: какой самый простой способ сделать пользовательский редактор для таблицы записей?
Например: у меня есть куча строк данных, и я хочу изменить поле "category" на каждом-может быть, выпадающее меню, может быть, ссылка, может быть, пользователь вводит его.
В Rails я бы перебирал строки, чтобы построить таблицу, и имел бы форму для каждой строки. Форма будет иметь поле ввода или выпадающее меню и передавать данные контроллеру, например "/item/edit/15?категория=foo", где 15 - это itemID, а новая категория-"foo".
Я новичок в модели ASP.NET и не уверен в способе "right" сделать это - просто самый простой способ вернуть новые данные & сохранить его. Можно ли создать пользовательский элемент управления и добавить его к каждой строке? Любая помощь оценена по достоинству.
Должен ли я поддерживать ASP.NET 1.1?
Я только что начал работать над проектом ASP.NET , который я надеюсь открыть с открытым исходным кодом, как только он достигнет подходящей стадии. В основном это будет библиотека, которую могут использовать существующие веб-сайты. Я предпочитаю поддерживать ASP.NET 2.0 через 3.5 , но мне было интересно, сколько людей я оставлю, не поддержав ASP.NET 1.1 ? Более конкретно, сколько людей все еще используют ASP.NET 1.1 , для которых ASP.NET 2.0/3.5 не является вариантом? Если обновление вашего сервера не является для вас вариантом, почему бы и нет?
Мобильное устройство определяется как не мобильное устройство
Я включил мобильную веб-форму в свой проект asp.net, я думал, что она может/должна быть видна только для моих мобильных пользователей, но я понимаю, что она также может быть видна из любого браузера, я не вижу там проблемы, потому что я мог бы diff доступ с помощью HttpBrowserCapabilities.IsMobileDevice=true и передачи на соответствующую страницу aspx, но это приводит к тому, что при доступе к веб-форме с моего мобильного устройства она идентифицируется как IsMobileDevice = false и отправляет меня на другую страницу.
Как это может быть возможным, что?
Мобильное устройство работает под управлением Pocket PC 2003.
Должен ли я поддерживать ASP.NET 1.1?
Я только что начал работать над проектом ASP.NET , который я надеюсь открыть с открытым исходным кодом, как только он достигнет подходящей стадии. В основном это будет библиотека, которую могут использовать существующие веб-сайты. Я предпочитаю поддерживать ASP.NET 2.0 через 3.5 , но мне было интересно, сколько людей я оставлю, не поддержав ASP.NET 1.1 ? Более конкретно, сколько людей все еще используют ASP.NET 1.1 , для которых ASP.NET 2.0/3.5 не является вариантом? Если обновление вашего сервера не является для вас вариантом, почему бы и нет?
Мобильное устройство определяется как не мобильное устройство
Я включил мобильную веб-форму в свой проект asp.net, я думал, что она может/должна быть видна только для моих мобильных пользователей, но я понимаю, что она также может быть видна из любого браузера, я не вижу там проблемы, потому что я мог бы diff доступ с помощью HttpBrowserCapabilities.IsMobileDevice=true и передачи на соответствующую страницу aspx, но это приводит к тому, что при доступе к веб-форме с моего мобильного устройства она идентифицируется как IsMobileDevice = false и отправляет меня на другую страницу.
Как это может быть возможным, что?
Мобильное устройство работает под управлением Pocket PC 2003.
Манипуляция изображениями в asp.net/c# без System.Drawing/GDI+
Есть ли какая-либо альтернативная библиотека обработки изображений для .net? я бы предпочел что-то управляемое и с открытым исходным кодом.
Я спрашиваю об этом по двум причинам:
- В прошлом я сталкивался с трудными для отладки ошибками GDI+ с System.Drawing
- Я читал, что использование System.Drawing в asp.net веб-приложениях не поддерживается 100%.
Спасибо!
edit: уточнение, я знаю, что System.Drawing может работать с asp.net веб-приложениями - я использовал его в прошлом. Мне действительно просто интересно, есть ли какие-либо управляемые библиотеки манипуляций с изображениями для .net :)
GridView удалить не работает
Я использую GridView в C#.NET 3.5 и только что преобразовал базовую модель DataSource из Adapter в объект,который получает свои данные от LINQ до SQL-т. е. бизнес-объект, который returns a List<> для функции GetData() и т. д.
Все было хорошо в Дании и Update, и условные операторы Select работают так, как ожидалось, но я не могу заставить функцию Delete работать. Просто пытаюсь передать ID или весь объект, но он передается в объект "new" без набора свойств. Мне просто интересно, если это старый монстр OldValuesParameterFormatString="original_{0}" в ObjectDataSource вызывает путаницу снова.
У кого-нибудь есть идеи?
Отчеты .NET 3.5 SP1 и aspnet_client Crystal
Я недавно (несколько дней назад) установил .NET 3.5 с пакетом обновления 1, а затем папку aspnet_client, находящихся с кучей отчетов Crystal код был впрыснут в мое .net веб-приложений.
Кто-нибудь еще испытал это? Правильно ли я говорю, что это побочный эффект SP1? Что это такое?
пользовательские элементы управления и asp.net mvc
Вот один тривиальный вопрос, с которым я не уверен, как справиться. Мне нужно отобразить список категорий на каждой странице и иметь возможность выбирать элементы из определенной категории для отображения. Я использую asp.net MVC и решил создать пользовательский элемент управления, который будет отображать категории. Мой вопрос: каков наилучший подход для передачи данных в пользовательский элемент управления. Я уже нашел некоторую информацию в этих сообщениях в блоге:
http://blog.matthidinger.com/2008/02/21/ASPNETMVCUserControlsStartToFinish.aspx
Я хотел бы также услышать Ваше мнение.
PS. Я хотел бы услышать мнение Джеффа, особенно из - за его опыта работы с UC на Stackoverflow
ASP.net AJAX Drag/Drop?
Интересно, знает ли кто-нибудь, есть ли заранее подготовленное решение для этого: у меня есть список на веб-сайте ASP.net, и я хочу, чтобы пользователь мог повторно отсортировать список с помощью перетаскивания. Кроме того, я хотел бы иметь второй список, в который пользователь может перетаскивать элементы из первого списка.
Пока что я нашел два решения:
- ReorderList из набора инструментов управления Ajax, который требует немного ручной работы, чтобы убедиться, что изменения сохраняются в базе данных,и который не поддерживает перетаскивание между списками.
- RadGrid от Telerik, который делает все, что я хочу, но по цене намного превосходит мой бюджет.
Есть ли у кого-нибудь еще какие-то идеи или хотя бы некоторые ключевые слова/указатели для дальнейшего исследования? В особенности перетаскивание между двумя списками-это то, что я довольно невежественен в том, как это сделать в ASP.net.
Кстати, целевой фреймворк-это 3.0.
Предложения по переходу с ASP.NET WebForms на ASP.NET MVC?
ASP.NET MVC обсуждалось на этом форуме несколько раз. Я собираюсь сделать большую миграцию нескольких веб-сайтов с классического ASP/ASP.NET WebForms на ASP.NET MVC и задавался вопросом, какие советы у вас есть с опытом работы в обеих технологиях.
Что у меня есть: типичное приложение ASP.NET с сильно связанной презентацией / бизнес-логикой, всевозможные грязные ASP.NET-generated Javascript cruft и т. д.
Что я хочу: чистый ASP.NET MVC-сгенерированный агностик markup. 'Nuff сказал.
Любые указатели, советы, трюки или gotchas, чтобы быть в курсе?
Спасибо!
Как запланировать пакетный процесс в asp.net
Я хочу запустить еженедельный пакетный процесс на странице asp.net. Как это можно сделать?
Спасибо
Как организовать запросы набора данных для повышения производительности
Я не знаю, когда, чтобы добавить к набору данных адаптера таблицы или запроса с помощью панели инструментов. Разве это имеет какое-то значение?
Я также не знаю, где создавать экземпляры адаптеров.
- Должен ли я сделать это в
Page_Load? - Должен ли я просто сделать это, когда я собираюсь использовать его?
- Открываю ли я новое соединение при создании нового экземпляра?
Это не кажется очень важным, но каждый раз, когда я создаю запрос, маленький голос в моем мозгу задает мне эти вопросы.
Какой Url рерайтер вы используете для ASP.Net?
Я просмотрел несколько URL рерайтеров для ASP.Net и IIS и задался вопросом, что все остальные используют и почему.
Вот те, которые я использовал или посмотрел:
- ThunderMain URLRewriter: использованный в предыдущем проекте, не совсем имел гибкость/производительность, которую мы искали
- Ewal UrlMapper: используется в текущем проекте, но источник, похоже, заброшен
- UrlRewritingNet.UrlRewrite: вроде бы неплохая библиотека, но документация плохая grammar заставляет меня чувствовать себя неловко
- UrlRewriter.NET : это моя текущая версия, обладает большой гибкостью, хотя дополнительные функции, закачанные в заменяющие регулярные выражения, немного изменяют стандартный синтаксис .Net regex
- Управляемый Fusion URL Rewriter : я нашел это в предыдущем вопросе о переполнении стека, но еще не пробовал его, судя по синтаксису примера, он не кажется редактируемым через web.config
Принтеры недоступны, если они не являются общими
Мы используем классический asp для вызова C# dll и в C# dll мы используем System.Drawing.Printing.PrinterSettings.InstalledPrinters, чтобы получить список доступных принтеров. Если принтеры не являются общими, они не будут отображаться, когда пользователь пытается распечатать. Локальная системная учетная запись может видеть и печатать на них с VB6 dll, а администраторы могут печатать просто отлично с C# dll, как вы могли бы ожидать. Есть ли какие-то разрешения, которые мы должны предоставить пользователю, чтобы эти принтеры были доступны?
Могу ли я генерировать маршруты ASP.NET MVC из Sitemap?
Я думаю изучить структуру ASP.NET MVC для предстоящего проекта. Могу ли я использовать расширенный маршрутизации, чтобы создать ДЛИННЫЕ URLs на основе иерархии sitemap?
Пример пути навигации:
Главная > Магазин > Продукты > Бытовая Техника > Кухня > Посуда > Кухонные Гарнитуры > Антипригарные
Типичный (я думаю) MVC URL:
http://example.com/products/category/NonstickCooksets
Нужные URL:
http://example.com/shop/products/household/kitchen/cookware/cooksets/nonstick
Могу я это сделать?
UltraWebGrid: как использовать раскрывающийся список в столбце
Я использую сетку Infragistics, и мне трудно использовать раскрывающийся список в качестве селектора значений для одного из моих столбцов.
Я пробовал читать документацию, но Infragistics ' документация не так хороша. Я также взглянул на эту дискуссию , но безрезультатно.
Что я делаю до сих пор:
col.Type = ColumnType.DropDownList;
col.DataType = "System.String";
col.ValueList = myValueList;
где myValueList это:
ValueList myValueList = new ValueList();
myValueList.Prompt = "My text prompt";
myValueList.DisplayStyle = ValueListDisplayStyle.DisplayText;
foreach(MyObjectType item in MyObjectTypeCollection)
{
myValueList.ValueItems.Add(item.ID, item.Text); // Note that the ID is a string (not my design)
}
Когда я смотрю на страницу, Я ожидаю увидеть раскрывающийся список в ячейках для этого столбца, но мои столбцы пусты.
Установка главной страницы ASP.NET во время выполнения
Я работаю над сайтом, который должен поддерживать два или более вида, изменяемых во время выполнения. Я надеялся, что смогу справиться с изменением с помощью переключателя CSS, но, похоже, мне придется использовать другую мастер-страницу для каждого дизайна.
Итак, как лучше всего установить мастер-страницу во время выполнения? Page.MasterPageFile можно задать только в событии Page.OnPreInit. Похоже, что решения состоят в том, чтобы сделать все мои страницы наследуемыми от общей базы, которая обрабатывает событие PreInit, или использовать HttpModule, который это делает.
Какой-нибудь совет?
Как мне избавиться от Home в ASP.Net MVC?
Я знаю, что этот сайт написан с использованием ASP.Net MVC, и я не вижу "/ Home " в url. Это доказывает мне, что это можно сделать. Какой специальный маршрут и нужен ли он мне?
Как отследить проблемы с производительностью при рендеринге страниц?
Мне было поручено улучшить производительность приложения ASP.NET 2.0 .
Страница, на которой я в настоящее время сосредоточен, имеет много проблем, но у меня возникли проблемы с копанием-это время рендеринга страницы. Использование Trace.axd длительность между началом и окончанием рендеринга составляет 1.4 секунд. Из MSDN я вижу, что
Все серверные элементы управления ASP.NET имеют Метод визуализации, который записывает элемент управления markup, который отправляется в браузер.
Если бы у меня был исходный код для всех элементов управления на странице, Я бы просто использовал их для trace из их времени рендеринга. К сожалению, эта конкретная страница имеет множество элементов управления, большинство из которых сторонние. Есть ли инструмент или техника, чтобы получить лучшую видимость того, что происходит во время рендеринга? Я хотел бы знать, есть ли особенно плохо выполняющийся элемент управления, или если на странице просто слишком много элементов управления.
Как автоматизировать повторяющиеся задачи после сборки?
Я запускаю решение для веб-сайта ASP.NET с несколькими другими проектами в нем. Я знаю, что проекты MSBuild способны на это, но разве это лучший способ? Легко ли их создать? Является ли nAnt, CruiseControl.NET или любое другое решение лучше?
Когда я создаю сайт (используя Web Deployment проекты ), могу ли я автоматизировать часть сборки, чтобы она не копировала определенные папки из проекта в папку выпуска? Например, у меня есть папки с локальными поисковыми индексами, изображениями и другими содержательными частями папки, но они никогда не нужны и не загружаются при развертывании проекта.
Я также рассматриваю этот тип решения для автоматического увеличения номеров сборки и версий.
400   7   11:07, 1st August, 2020
Минимизировать javascript HTTP вызовов из AjaxControlToolkit элементов управления?
Мне нравится простота, которую предоставляет инструментарий управления ASP.NET Ajax для разработчиков ASP.NET. Однако я не нашел, что это вообще масштабируемое решение. У меня есть страница с 2 полями ввода даты. Помещая в него элемент управления TextBox и CalendarExtendar для каждого поля даты, я получаю несколько (11, по сути) внешних вызовов Javascript в /ScriptResource.axd?d=xxxx
Есть ли способ контролировать это? Почему это так отстойно? Для чего нужен лучший инструментарий Ajax .NET что может обеспечить равный (или лучший) набор функций, который является более масштабируемым, прямым и полностью настраиваемым? NOT глядя, чтобы изобрести колесо здесь.
Диаграммы сущностей в ASP.NET MVC
Каков наилучший способ / инструмент для отображения хороших диаграмм с отношениями сущностей в представлениях ASP MVC?
т. е. серверы и приложения, или серверы с другими серверами.
Есть ли какие-либо сторонние инструменты, которые могут это сделать?
Я искал вокруг таких вещей, как Telerik, но это действительно трудно google для этого!
LocationProvider
Нам нужно заменить систему меню в нашем главном приложении ASP.NET. Поэтому, естественно, мы смотрим на элементы управления ASP.NET SiteMapProvider и Menu . Однако нам также нужна достаточная безопасность, чтобы запретить пользователям напрямую вводить URLs, к которому они не должны иметь доступа. Мы можем сделать это, поместив <location> записей в web.config и защищая их по отдельности, но это будет PITA для управления несколькими веб-серверами.
Есть ли Provider , который можно использовать, чтобы обеспечить эквивалент <location> записей? Я не смог найти его, и это немного расстраивает, учитывая существование класса ConfigurationLocation .
Кроме того, есть ли опция конфигурации, которую мы пропускаем в SiteMapProvider, которая ограничит пользователей от получения до URLs, они не должны?
Как конвертировать путь к файлу в формат URL в ASP.NET
В принципе, у меня есть некоторый код для проверки определенного каталога, чтобы увидеть, есть ли изображение, и если да, то я хочу назначить URL образу ImageControl.
if (System.IO.Directory.Exists(photosLocation))
{
string[] files = System.IO.Directory.GetFiles(photosLocation, "*.jpg");
if (files.Length > 0)
{
// TODO: return the url of the first file found;
}
}
Web App-Тип Панели Мониторинга GUI-Интерфейс
Я ищу, чтобы создать графический интерфейс типа панели мониторинга для веб-приложения. Я ищу, чтобы пользователь мог перетаскивать различные элементы (возможно, кнопки изображений, теги привязки или, возможно, просто divs) в разные (определенные) места и сохранять их настройки (в файле cookie или на сервере). Я работаю с c# в .Чистый рамках 2.0. Я пробовал использовать mootools, но их недавнее обновление оставило их возможности перетаскивания бесполезными для меня. Я ищу немного направления, потому что я знаю, что там есть что-то, что я ищу, поэтому мне не придется строить с нуля.
Спасибо.
Как я могу обрабатывать поток страниц в MVC (в частности asp.net)
Если бы вам пришлось предоставить мастер, такой как опыт ввода формы в mvc, как бы вы абстрагировали поток страниц?
OpenID аутентификация в ASP.NET?
Я начинаю создавать новое веб-приложение, которое потребует учетных записей пользователей. Теперь, когда у меня есть OpenID, который я использую для этого сайта, я подумал, что было бы здорово, если бы я мог использовать OpenID для аутентификации в своем приложении. Есть ли какие-нибудь хорошие учебники о том, как интегрировать OpenID с сайтом ASP.NET?
Как лучше всего реализовать проверку полей с помощью ASP.NET MVC?
Я создаю общедоступный веб-сайт с использованием ASP.NET, в качестве части результата мне нужно сделать сайт администратора для ввода данных из материала, показанного на общедоступном сайте, мне было интересно, какие методы или процедуры используют люди для проверки записей с использованием ASP.NET MVC.
PHPs htmlspecialcharacters эквивалент в .NET?
PHP имеет отличную функцию под названием htmlspecialcharacters() , где вы передаете ей строку, и она заменяет все специальные символы HTML их безопасными эквивалентами, это почти один магазин для очистки ввода. Очень мило, правда?
Ну есть ли эквивалент в любой из библиотек .NET?
Если нет, то может ли кто-нибудь ссылаться на любые примеры кода или библиотеки, которые делают это хорошо?
Кто на самом деле использует DataGrid/GridView/FormView/etc в производственных приложениях?
Любопытно, чувствуют ли другие то же самое, что и я. Для меня такие элементы управления, как datagrid/gridview/formview/etc. отлично подходят для презентаций или только демо-версии. Чтобы занять время и настроить эти элементы управления, переопределите их поведение по умолчанию (подключение к их глупым событиям и т. д.) - это большая головная боль. Единственный элемент управления, который я использую, - это ретранслятор, поскольку он обеспечивает мне наибольшую гибкость по сравнению с другими.
Короче говоря, они довольно сильно раздуваются.
Я бы предпочел создать свой собственный html/css,, используя свои собственные пользовательские запросы подкачки.
Опять же, если вам нужно быстро открыть страницу, эти элементы управления отлично подходят (особенно если вы пытаетесь привлечь людей к легкости разработки .NET ).
Я должен быть в меньшинстве, иначе MS не посвятил бы столько времени разработке этих типов управления...
Создание собственной таблицы с кнопками CommandArgument в ASP.NET MVC
Я пытаюсь реализовать что-то вроде этого:
<div>
<table>
<thead>
<tr>
<td>Port name</td>
<td>Current port version</td>
<td>New port version</td>
<td>Update</td>
</tr>
</thead>
<% foreach (var ip in Ports) { %>
<tr>
<td>
<%= ip.PortName %>
</td>
<td>
<%= ip.CurrentVersion %>
</td>
<td>
<%= ip.NewVersion %>
</td>
<td>
<asp:Button ID="btnUpdate" runat="server" Text="Update" CommandArgument="<% ip.PortName %>" />
</td>
</tr>
<% } %>
</table>
</div>
Свойство CommandArgument кнопки-это то, где мой код жалуется на то, что не может разрешить символ ip . Есть ли способ сделать то, что я пытаюсь сделать?
Как лучше всего использовать gzip и кэшировать статические изображения в Asp.net mvc
Я пытаюсь найти лучший способ ускорить доставку статических изображений, которые составляют дизайн сайта mvc. Изображения не являются gzipped, а также не кэшируются на сервере или на клиенте (с истекшим содержимым). Варианты есть:
- Найдите, почему изображения не кэшируются и не gzipped напрямую из IIS6
- Напишите специализированный обработчик http
- Зарегистрировать специальный маршрут для статических изображений и написать actionresult метод двойных
Что может быть лучшим решением с точки зрения производительности?
Каков наилучший способ аутентификации через WCF?
Каков наилучший способ реализации аутентификации через WCF?
Я бы предпочел не использовать WS-*, поскольку он должен быть независимым от транспорта.
Должен ли я "свернуть свой собственный"? Есть ли какие-либо рекомендации для этого (articles/blog сообщений)?
Или есть какой-то способ (и должен ли я) использовать встроенные поставщики членства и профилей ASP.NET на стороне сервера?
Приватизация установки BlogEngine.Net
У меня есть установка blogengine.net, которая требует приватизации.
В данный момент я занимаюсь исследовательской работой, но я должен держать свой блог/журнал в секрете, пока не будут выполнены определенные условия.
Как я могу приватизировать свою установку blogEngine.net, чтобы читатели должны были войти в систему, чтобы прочитать мои сообщения?
ASP.NET Пользовательские Элементы Управления-Композиты
Резюме
Привет Всем,
OK, далее в мои приключения с пользовательскими элементами управления...
В общем, вот что я узнал о трех основных "classes" пользовательских элементах управления. Пожалуйста, не стесняйтесь поправлять меня, если что-то из этого неправильно!
- UserControls -которые наследуются от UserControl и содержатся в файле ASCX . Они довольно ограничены в том, что они могут сделать, но это быстрый и легкий способ получить некоторую общность UI с поддержкой дизайнера.
- Пользовательские составные элементы управления -это элементы управления, которые наследуются от WebControl , где вы добавляете ранее существующие элементы управления к элементу управления в методе CreateChildControls. Это обеспечивает большую гибкость, но отсутствие поддержки дизайнера без дополнительного кодирования. Они очень портативны, хотя, поскольку их можно скомпилировать в DLL.
- Пользовательские визуализированные элементы управления -подобно пользовательским составным элементам управления, они добавляются в проект Библиотеки веб-элементов управления. Рендеринг элемента управления полностью контролируется программистом путем переопределения метода рендеринга .
свои мысли..
OK, поэтому, играя с пользовательскими композитами, я обнаружил следующее:
- У вас мало/нет контроля над выходом HTML, что затрудняет "debug".
- CreateChildControls (и последующие методы) могут быть действительно заняты Controls.Add(myControl) везде.
- Я обнаружил, что таблицы рендеринга (будь то для макета или контента) значительно неудобны.
Вопрос(ы)..
Итак, я признаю, что я новичок в этом, поэтому я мог бы быть далеко от базы с некоторыми из моих пунктов, отмеченных выше..
- Вы используете композиты?
- Есть ли у вас какие-нибудь аккуратные трюки, чтобы контролировать выход HTML?
- Вы просто говорите "to hell with it" и идете дальше и создаете пользовательский визуализированный элемент управления?
Это то, что я очень хочу получить действительно твердым в своем уме, так как я знаю, насколько хорошее развитие контроля может сократить общее время разработки.
Я с нетерпением жду ваших ответов ^_^
Получение имени компьютера клиента? (Windows авт)
У меня есть приложение ASP.net, которое работает во внутренней сети (Ну, на самом деле он работает на Sharepoint 2007).
Мне просто интересно:
Могу ли я каким-то образом получить имя PC, которое использует клиент?
У меня будет доступ к Active Directory, если это поможет.
Дело в том, что люди используют несколько PCs, поэтому я не могу использовать ручное/статическое отображение.
Если возможно, я не хочу использовать какой-либо код на стороне клиента (читай: JavaScript), но если это невозможно сделать на стороне сервера, JavaScript также будет OK.
(ActiveX абсолютно исключено)
Большие, сложные объекты как результат работы веб-службы
Еще раз здравствуйте, дамы и господа!
OK, вслед за моим другим вопросом о результатах веб-службы ASP.NET, Прокси-классах и преобразовании типов . Я пришел к той части своего проекта, где мне нужно надеть свою мыслительную шапочку.
В принципе, у нас есть большой, сложный пользовательский объект, который должен быть возвращен из веб-службы и использован в клиентском приложении.
Теперь, основываясь на предыдущем обсуждении, мы знаем, что это будет затем принимать форму прокси-класса(классов) в качестве возвращаемого типа. Чтобы преодолеть это, нам нужно в основном скопировать свойства от одного к другому.
В данном случае, это то, что я бы очень, очень, очень хотел! хотелось бы избежать!
Так что, это заставило меня задуматься, как еще мы могли бы это сделать?
Мои текущие мысли заключаются в том, чтобы включить объект для полной сериализации в XML, а затем вернуть XML в виде строки из веб-службы. Затем мы десериализации на клиенте. Это будет означать изрядную часть украшения атрибутов, но, по крайней мере, код на обеих конечных точках будет легким, а именно, просто используя сериализатор .NET XML.
Что вы думаете по этому поводу?
Получение адреса удаленного имени (не IP)
Я хотел показать адрес имени пользователя (см. www.ipchicken.com), но единственное, что я могу найти, - это IP-адрес. Я попробовал обратный поиск, но тоже ничего не вышло:
IPAddress ip = IPAddress.Parse(this.lblIp.Text);
string hostName = Dns.GetHostByAddress(ip).HostName;
this.lblHost.Text = hostName;
Но HostName - это то же самое, что и адрес IP.
Кто знает, что мне нужно сделать?
Спасибо. Болтливость.
Автоматизация WSDL.exe в пользовательской сборке
У меня есть веб-приложение, написанное в C#, которое потребляет несколько внутренних веб-служб. У нас есть уровень разработки, уровень тестирования и производственный уровень. Кроме того, мы используем команду WSDL.exe для создания файла Proxies.cs для веб-служб данного уровня.
Когда мы готовы развернуть наш код в стеке от разработки до тестирования или от тестирования до производства, нам нужно выполнить команду WSDL.exe , чтобы указать соответствующую версию веб-служб.
Есть ли общепринятый способ автоматизировать это?
Каков формат строки подключения ASP.NET для связанного сервера?
У меня есть сервер базы данных, к которому я не могу подключиться, используя предоставленные мне учетные данные. Однако в промежуточной версии того же сервера имеется связанный сервер, который указывает на производственную базу данных. И промежуточный сервер, и связанный сервер имеют одну и ту же схему.
Меня заверили, что я должен ожидать, что смогу подключиться к живому серверу, прежде чем мы выйдем в прямой эфир. К сожалению, я достиг той точки в своей разработке, когда мне нужно больше, чем образцы записей маркеров, которые в настоящее время находятся в промежуточной базе данных. Итак, я надеялся подключиться к связанному серверу.
До сих пор в моей разработке против этой схемы был против самого промежуточного сервера, используя объекты Subsonic. Все это прекрасно работает.
Я могу подключиться через SQL Server Management Studio к этому связанному серверу и выполнять свои запросы напрямую. Я также могу выполнять "ручные" запросы в C# против связанного сервера, подключив строку подключения к промежуточному серверу и запустив мои запросы как
SELECT * из OpenQuery([LINKEDSERVER], 'QUERY')
Тем не менее, объекты Subsonic-это то, что позволяет мне вовремя и в рамках бюджета реализовать этот проект, поэтому я не собираюсь делать прямые запросы в своем коде.
То, что я ищу, - это есть ли способ указать строку подключения к связанному серверу. Я просмотрел много записей на форуме и т. д. по этой теме и большинству ответов кажется, что они полностью замалчивают часть вопроса "linked server", сосредоточившись на основном синтаксисе строки соединения.
Рекомендуется авторизовать всех пользователей только на одной странице
Каков наилучший способ авторизации всех пользователей на одной странице на веб-сайте asp.net.
За исключением страницы входа и еще одной страницы, я запрещаю всем пользователям просматривать страницы на веб-сайте.
Как сделать эту страницу доступной для всех пользователей?
Что является лучшим способом, чтобы написать форму по ASP.NET ДТП?
Каков наилучший способ написать форму для отправки некоторых данных в ASP.NET MVC? Это так, как Скотт Гатри демонстрирует здесь? Есть ли лучшие подходы? Возможно, с меньшим использованием строк?
Используя ASP.NET MVC, как лучше всего избежать написания Как добавить представление, так и изменить представление?
Добавление представления и представления изменения зачастую невероятно похожие, что оно является необоснованным написать 2 Просмотров. По мере развития приложения вы будете вносить одинаковые изменения в оба.
Однако, как правило, существуют тонкие различия. Например, поле может быть доступно только для чтения после его добавления, и если это поле является DropDownList, вам больше не нужен этот список в ViewData.
Итак, должен ли я создать класс данных представления, который содержит всю информацию для обоих представлений, где, в зависимости от выполняемой операции, определенные свойства будут null?
Должен ли я включать операцию в данные представления в качестве перечисления?
Должен ли я окружать все тонкие различия с <% if( ViewData.Model.Op == Ops.Editing ) { %> ?
Или есть лучший способ?
Asp.net MVC User Control ViewData
Когда контроллер отображает представление на основе модели, вы можете получить свойства из коллекции ViewData с помощью индексатора (т. е. ViewData["Property"]). Однако у меня есть общий пользовательский элемент управления, который я попытался вызвать, используя следующее:
return View("Message", new { DisplayMessage = "This is a test" });
и на моем пульте управления сообщениями у меня было это:
<%= ViewData["DisplayMessage"] %>
Я думаю, что это будет правильно отображать DisplayMessage, однако null возвращается. После большой дозы возни вокруг, я, наконец, создал класс "MessageData" для того, чтобы строго ввести свой пользовательский элемент управления:
public class MessageControl : ViewUserControl<MessageData>
и теперь этот звонок работает:
return View("Message", new MessageData() { DisplayMessage = "This is a test" });
и может отображаться следующим образом:
<%= ViewData.Model.DisplayMessage %>
Почему бы не добавить свойство DisplayMessage к свойству ViewData (т. е. ViewData["DisplayMessage"]) сбор без сильного ввода пользовательского элемента управления? Это что, специально придумано? Разве не логично, что ViewData будет содержать ключ для "DisplayMessage"?
Можно ли получить доступ к серверу разработки ASP.NET в интрасети?
Я тестирую сайт ASP.NEt. Когда я выполняю его, он запускает сервер разработки ASP.NET и открывает страницу.
Теперь я хочу проверить его в интранете, который у меня есть.
Могу ли я использовать этот сервер или мне нужно настроить IIS на этой машине?
Нужно ли мне что-то настроить, чтобы он работал?
Я изменил localhost на правильный IP и открыл брандмауэр.
Спасибо
Проверка подлинности с помощью форм в приложениях
Я работаю над внутренним веб-инструментом для своей компании. Частью этого инструмента является другое приложение (Панель управления круиз-контролем), которое работает в своем собственном виртуальном каталоге под моим корневым приложением.
Я хотел ограничить доступ к этому внутреннему приложению, настроив аутентификацию форм на нем и имея форму входа в корневое приложение.
Я поместил следующее в корневые приложения web.config:
<location path="ccnet">
<system.web>
<authentication mode="Forms">
<forms loginUrl="/default.aspx" timeout="5000"/>
</authentication>
<authorization>
<allow users="?"/>
<deny users="?"/>
</authorization>
</system.web>
</location>
Однако проверка подлинности форм не работает, она не перенаправляется обратно на страницу входа, когда я получаю доступ к этому приложению напрямую.
У меня такое чувство, что у меня есть теги <allow> и <deny>, установленные неправильно. Может кто-нибудь прояснить?
Вызов базовых методов при переопределении событий уровня страницы
В моем коде за спиной я связываю свои события вот так:
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
btnUpdateUser.Click += btnUpateUserClick;
}
Я сделал это таким образом, потому что это то, что я видел в примерах.
- Нужно ли вызывать метод base.OnInit()?
- Будет ли он неявно называться?
- Лучше ли вызывать его в начале метода или в конце?
- Каков будет пример, когда путаница в базовом методе может привести вас к неприятностям?
Альтернативы Windows Workflow Foundation?
Я уже некоторое время использую WWF как часть внутреннего приложения центра обработки вызовов (ASP.NET), и хотя это была хорошая практика в понимании того, как должна работать система документооборота на основе государственных машин, я определенно не влюблен в WWF сам по себе. На мой взгляд так оно и есть:
- Чрезмерно сложный, особенно для использования в веб-приложениях (все эти потоковые вещи во время выполнения)
- Незрелый (когда-нибудь работал с этим ужасным дизайнером?)
- Анемичный в своем текущем наборе функций
Есть ли у кого-нибудь предложения по улучшению структуры рабочего процесса на основе .NET? В частности, я ищу следующие функции:
- Состояние на основе машины (сопоставление состояний с доступными действиями)
- Фокус на разрешениях пользователей (управление тем, кто имеет доступ к каким действиям)
- Возможность запуска рабочих процессов в качестве временных фоновых задач (например, для отправки напоминаний для элементов, которые находились в определенном состоянии в течение x дней)
Это действительно все, что мне нужно. Мне не нужно быть в состоянии "drag and drop" какие-либо действия или визуально проектировать поток. Я совершенно комфортно пишу фактический код, как только запускается определенное действие.
Вызов веб-службы ASP.NET из ASP с помощью SOAPClient
У меня есть веб-сервис ASP.NET с такими функциями, как:
[WebService(Namespace = "http://internalservice.net/messageprocessing")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[ToolboxItem(false)]
public class ProvisioningService : WebService
{
[WebMethod]
public XmlDocument ProcessMessage(XmlDocument message)
{
// ... do stuff
}
}
Я вызываю веб-службу из ASP, используя что-то вроде:
provWSDL = "http://servername:12011/MessageProcessor.asmx?wsdl"
Set service = CreateObject("MSSOAP.SoapClient30")
service.ClientProperty("ServerHTTPRequest") = True
Call service.MSSoapInit(provWSDL)
xmlMessage = "<request><task>....various xml</task></request>"
result = service.ProcessMessage(xmlMessage)
Проблема, с которой я сталкиваюсь, заключается в том, что когда XML достигает метода ProcessMessage, веб-служба plumbing попутно добавила пространство имен по умолчанию. т. е. если я установлю точку останова внутри ProcessMessage (сообщение XmlDocument), я увижу:
<request xmlns="http://internalservice.net/messageprocessing">
<task>....various xml</task>
</request>
Когда я захватываю пакеты по проводу, я вижу, что XML, отправленный инструментарием SOAP, немного отличается от того, что отправлено клиентом .NET WS. Набор инструментов SOAP отправляет:
<SOAP-ENV:Envelope
xmlns:SOAPSDK1="http://www.w3.org/2001/XMLSchema"
xmlns:SOAPSDK2="http://www.w3.org/2001/XMLSchema-instance"
xmlns:SOAPSDK3="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Body>
<ProcessMessage xmlns="http://internalservice.net/messageprocessing">
<message xmlns:SOAPSDK4="http://internalservice.net/messageprocessing">
<request>
<task>...stuff to do</task>
</request>
</message>
</ProcessMessage>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Если клиент отправляет .NET:
<soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<ProcessMessage xmlns="http://internalservice.net/messageprocessing">
<message>
<request xmlns="">
<task>...stuff to do</task>
</request>
</message>
</ProcessMessage>
</soap:Body>
</soap:Envelope>
Прошло так много времени с тех пор, как я использовал инструментарий ASP/SOAP для вызова веб-сервисов .NET, что я не могу вспомнить все умные tricks/SOAP-fu, которые я использовал, чтобы обойти подобные вещи.
Есть какие-нибудь идеи? Одним из решений является создание вызываемого COM .NET прокси, который принимает XML как строковый парам и вызывает WS от моего имени, но это дополнительный уровень сложности/работы, которую я надеялся не делать.
"Предотвращение Выполнения Данных" убивает (VS2008) локальный сервер разработки ASP.Net (aka Cassini) на Vista 64
Иногда я обнаруживаю, что во время отладки приложения ASP.Net (написанного в visual studio 2008, работающего на 64-разрядной версии Vista) локальный сервер разработки ASP.Net (т. е. 'Cassini') перестает отвечать на запросы.
Мне часто приходит сообщение о том, что "Data Execution Prevention (DEP)" убил WebDev.WebServer.exe
Журналы событий просто говорят мне, что " WebDev.WebServer.exe перестал работать"
Я слышал, что этот 'problem' представляет себя чаще на Vista 64-bit, потому что DEP включен по умолчанию. Следовательно, отключение DEP может привести к 'solve' проблеме.
Но мне интересно:
Есть ли известная ошибка / ситуация с Cassini, которая заставляет DEP убить процесс?
Кроме того, какова практическая опасность отключения предотвращения выполнения данных?
Удалить строку таблицы с несколькими первичными ключами
У меня есть datalist с OnDeleteCommand="Delete_Command".
Я хочу удалить запись с несколькими первичными ключами, но я не знаю, как получить к ней доступ из события Delete_Command.
Если я использую DataKeyField, я ограничен только одним ключом. Какие-нибудь обходные пути для этого?
Лучший TinyMce редактор Image Manager / загрузка файлов для Asp.net Mvc
Что является лучшим менеджером изображений для интеграции в Редакторе TinyMce, кроме официальных коммерческих Moxiecode?
Я ищу, чтобы интегрировать легкий текстовый редактор в приложение asp.net mvc, и я выбрал решение Tinymce (а не классический FCKEditor, поскольку это кажется более легким и более удобным для jquery).
К сожалению, TinyMce не поставляется с интегрированным менеджером изображений или менеджером документов, как FCKeditor, но вы должны купить их как плагины для Moxiecode.
Я искал другие плагины, но до сих пор я не нашел никакого решения decend и light, которое работает с asp.net MVC framework.
Есть какие-нибудь предложения?
Виды в отдельных сборках в ASP.NET MVC
Я пытаюсь создать веб-приложение, в котором я хочу иметь возможность подключать отдельные сборки. Я использую MVC preview 4 в сочетании с Unity для внедрения зависимостей, которые я использую для создания контроллеров из моих сборок плагинов. Я использую WebForms (default aspx) в качестве движка представления.
Если я хочу использовать представление, я застрял на тех, которые определены в основном проекте, из-за динамической компиляции части ASPX. Я ищу правильный способ вложить файлы ASPX в другой assembly, не проходя через весь шаг deployment. Неужели я упускаю что-то очевидное? Или мне следует прибегнуть к программному созданию своих представлений?
Update: я изменил принятый ответ. Несмотря на то, что ответ Дейла очень скрупулезен, я пошел за решением с другим поставщиком виртуальных путей. Он работает как заклинание и занимает всего около 20 строк кода, я думаю.
Отображение строк в нескольких Столбцах в Asp.net Gridview
По умолчанию каждая строка Gridview сопоставляется с каждой строкой в datatable или наборе данных, прикрепленном к ее источнику данных. Но что делать, если я хочу отобразить эти строки в нескольких столбцах. Например, если он имеет 10 строк, 5 строк должны отображаться в 2 столбцах рядом друг с другом. Также я могу сделать это с сеткой Infragistics. Разве это возможно?
Профилирование / Оптимизация (Sharepoint 2007) Веб-Частей
Мне просто интересно, какие варианты существуют для правильной работы веб-частей measure/profile/optimize ASP.net 2.0, особенно для Sharepoint 2007?
Поскольку веб-части являются слоем на другом уровне технологии, получение использования ресурсов, открытых дескрипторов и прочего только для веб-части кажется немного сложным.
Кто-нибудь знает некоторые хорошие инструменты или методы для профилирования и оптимизации веб-частей?
Как я могу перенаправить пользователя на настраиваемую страницу 404 в ASP.NET MVC вместо того, чтобы бросать исключение?
Я хочу иметь возможность захватить исключение, которое возникает, когда пользователь запрашивает несуществующий контроллер, и перенаправить его на страницу 404. Как я могу это сделать?
Например, пользователь запрашивает http://www.nosite.com/paeges/1 ( должно быть /pages/). Как мне сделать так, чтобы они были перенаправлены на экран 404, а не на экран исключений?
Автоматизация WSDL.exe в пользовательской сборке
У меня есть веб-приложение, написанное в C#, которое потребляет несколько внутренних веб-служб. У нас есть уровень разработки, уровень тестирования и производственный уровень. Кроме того, мы используем команду WSDL.exe для создания файла Proxies.cs для веб-служб данного уровня.
Когда мы готовы развернуть наш код в стеке от разработки до тестирования или от тестирования до производства, нам нужно выполнить команду WSDL.exe , чтобы указать соответствующую версию веб-служб.
Есть ли общепринятый способ автоматизировать это?
Каков формат строки подключения ASP.NET для связанного сервера?
У меня есть сервер базы данных, к которому я не могу подключиться, используя предоставленные мне учетные данные. Однако в промежуточной версии того же сервера имеется связанный сервер, который указывает на производственную базу данных. И промежуточный сервер, и связанный сервер имеют одну и ту же схему.
Меня заверили, что я должен ожидать, что смогу подключиться к живому серверу, прежде чем мы выйдем в прямой эфир. К сожалению, я достиг той точки в своей разработке, когда мне нужно больше, чем образцы записей маркеров, которые в настоящее время находятся в промежуточной базе данных. Итак, я надеялся подключиться к связанному серверу.
До сих пор в моей разработке против этой схемы был против самого промежуточного сервера, используя объекты Subsonic. Все это прекрасно работает.
Я могу подключиться через SQL Server Management Studio к этому связанному серверу и выполнять свои запросы напрямую. Я также могу выполнять "ручные" запросы в C# против связанного сервера, подключив строку подключения к промежуточному серверу и запустив мои запросы как
SELECT * из OpenQuery([LINKEDSERVER], 'QUERY')
Тем не менее, объекты Subsonic-это то, что позволяет мне вовремя и в рамках бюджета реализовать этот проект, поэтому я не собираюсь делать прямые запросы в своем коде.
То, что я ищу, - это есть ли способ указать строку подключения к связанному серверу. Я просмотрел много записей на форуме и т. д. по этой теме и большинству ответов кажется, что они полностью замалчивают часть вопроса "linked server", сосредоточившись на основном синтаксисе строки соединения.
Как отображается код ASP.NET "Yellow Screen of Death"?
Я думал, что код .Net компилируется в MSIL, поэтому мне всегда было интересно, как желтые экраны производят неисправный код. Если он выполняет скомпилированный код, как компилятор может создавать код из исходных файлов в сообщении об ошибке?
Не стесняйтесь редактировать это question/title, я знаю, что это действительно не имеет смысла.
Обработать содержимое запроса raw HTTP
Я делаю решение для электронной коммерции в ASP.NET, которое использует стандартный сервис платежей на веб-сайте PayPal . Вместе с этим я использую услугу, которую они предлагают ( передача платежных данных), которая отправляет вам информацию о заказе после того, как пользователь завершил платеж. Последнее, что мне нужно сделать, это проанализировать запрос POST от них и сохранить информацию в нем. Содержимое запроса HTTP находится в этой форме :
SUCCESS
имя=Джейн+Мэ
фамилия=Smith
payment_status=завершено
payer_email=janedoesmith%40hotmail.com
payment_gross=3.99
mc_currency=USD
заказ=по+С+купить+в+о+редкая+книга+зеленый+яйца+%26+ветчина
В основном я хочу разобрать эту информацию и сделать что-то значимое, например, отправить ее по электронной почте или сохранить в DB. Мой вопрос заключается в том, что является правильным подходом к разбору необработанных данных HTTP в ASP.NET, а не как сам разбор выполняется.
ILMerge и веб-ресурсы
Мы пытаемся объединить наши DLL в один для deployment, таким образом ILMerge. Почти все, кажется, работает отлично. У нас есть пара веб-элементов управления, которые используют ClientScript.RegisterClientScriptResource , и это 404-ing после слияния (они работали до слияния).
Например, один из наших элементов управления будет выглядеть так
namespace Company.WebControls
{
public class ControlA: CompositeControl, INamingContainer
{
protected override void OnPreRender(EventArgs e)
{
base.OnPreRender(e);
this.Page.ClientScript.RegisterClientScriptResource(typeof(ControlA), "Company.WebControls.ControlA.js");
}
}
}
Он будет расположен в проекте WebControls, assembly Company.WebControls. Внизу будет ControlA.cs и ControlA.js. ControlA.js помечается как встроенный ресурс. В AssemblyInfo.cs я включаю следующее:
[assembly: System.Web.UI.WebResource("Company.WebControls.ControlA.js", "application/x-javascript")]
После того, как это будет объединено в CompanyA.dll, как правильно ссылаться на этот веб-ресурс? Командная строка ILMerge выглядит следующим образом (из каталога bin после сборки): "C:\Program Files\Microsoft\ILMerge\ILMerge.exe" /keyfile:../../CompanySK.snk /wildcards:True /copyattrs:True /out:Company.dll Company.*.dll
Рефакторинг для тестируемости в существующей системе
Я присоединился к команде, которая работает над продуктом. Этот продукт был вокруг в течение ~5 лет или около того, и использует ASP.NET WebForms. Его оригинальная архитектура со временем исчезла, и вещи стали относительно неорганизованными на протяжении всего решения. Это ни в коем случае не ужасно, но определенно может использовать некоторую работу; вы все знаете, что я имею в виду.
Я выполнял некоторые рефакторинги с момента прихода в команду проекта около 6 месяцев назад. Некоторые из этих рефакторингов просты, метод извлечения, метод вытягивания и т. д. Некоторые из рефакторингов являются более структурными. Последние изменения заставляют меня нервничать, поскольку нет полного набора модульных тестов для сопровождения каждого компонента.
Вся команда готова внести структурные изменения через рефакторинг, но наш руководитель проекта выразил некоторые опасения, что у нас нет адекватных тестов для рефакторинга с уверенностью, что мы не вводим ошибки регрессии в систему. Он хотел бы, чтобы мы сначала написали больше тестов (против существующей архитектуры), а затем выполнили рефакторинг. Мой аргумент заключается в том, что структура классов системы слишком тесно связана, чтобы писать адекватные тесты, и что использование более тестового подхода при выполнении наших рефакторингов может быть лучше. Я имею в виду не написание тестов для существующих компонентов, а написание тестов для конкретных функциональных требований, а затем рефакторинг существующего кода для удовлетворения этих требований. Это позволит нам писать тесты, которые, вероятно, будут иметь больше долговечности в системе, а не писать кучу тестов 'throw away'.
Есть ли у кого-нибудь опыт относительно того, каков наилучший курс действий? У меня есть свои собственные мысли, но я хотел бы услышать некоторый вклад от сообщества.
Проблема двойной обратной связи
У меня есть приложение ASP.NET 1.1, и я пытаюсь выяснить, почему при изменении значения ComboBox, которое используется для заполнения другого (отношение родитель-потомок), создаются две обратные связи.
Я проверял и проверял код, но не могу найти причину.
Вот оба стека вызовов, которые заканчиваются в page_load
Первая обратная (порожденных autopostback элемента управления ТЭН ComboBox по )
Стек обратного вызова http://www.juanformoso.com.ar/images/callstack1.jpg
Второй постбэк (это то, что я хочу найти, почему это происходит)
alt text http://www.juanformoso.com.ar/images/callstack2.jpg
Есть какие-нибудь предложения? Что я могу проверить?
SQL Reporting Services viewer for webpage-можно ли переместить кнопку Просмотр отчета?
Используя элемент управления viewer для отображения отчетов служб SQL Reporting Services на веб-странице (Microsoft.ReportViewer.WebForms), можно ли переместить кнопку Просмотр отчета? По умолчанию он находится в самой правой части отчета, что означает, что вам нужно прокрутить весь путь до того, как кнопка будет видна. Это не проблема для отчетов, которые соответствуют ширине окна, но для очень широких отчетов это быстро становится проблемой.
VBScript/IIS - как автоматически установить версию ASP.NET для конкретного веб-сайта
Мне нужно написать сценарий создания пулов приложений и веб-сайтов на IIS 6.0. Я смог создать их с помощью adsutil.vbs и iisweb.vbs, но не знаю, как установить версию ASP.NET для сайтов, которые я только что создал, в 2.0.50727.0.
В идеале я хотел бы adsutil.vbs обновить метабазу. Как мне это сделать?
"использование" эквивалента пространства имен в ASP.NET markup
Когда я работаю с элементами управления DataBound в ASP.NET 2.0, такими как повторитель, я знаю, что самый быстрый способ получить свойство связанного объекта (вместо использования отражения с функцией Eval()) - это привести объект DataItem к типу, который он есть, а затем использовать этот объект изначально, как показано ниже:
<%#((MyType)Container.DataItem).PropertyOfMyType%>
Проблема в том, что если этот тип находится в пространстве имен (что является случаем 99.99% времени), то этот единственный оператор намного длиннее из-за того, что страница ASP не имеет понятия области класса, поэтому все мои типы должны быть полностью квалифицированы.
<%#((RootNamespace.SubNamespace1.SubNamspace2.SubNamespace3.MyType)Container.DataItem).PropertyOfMyType%>
Есть ли какая-то директива using или какой-то эквивалент, который я мог бы поместить где-то на странице ASP.NET, чтобы мне не нужно было каждый раз использовать полное пространство имен?
Добавление NUnit к опциям для ASP.NET MVC test framework
- У меня установлен nUnit.
- У меня установлен VS2008 Team Edition.
- У меня установлен ASP.Net MVC Preview 4 (Codeplex).
Как заставить Visual Studio показать мне nUnit в качестве платформы тестирования при создании нового проекта MVC? На данный момент у меня все еще есть только Microsoft Testing Framework в качестве выбора.
Обновление: я установил nUnit 2.5, но все еще безуспешно. Из того, что я нашел в Google, мне кажется, что мне нужно создать шаблоны для тестовых проектов, чтобы они отображались в "Create Unit Test Project". Я бы подумал, что шаблоны будут легко доступны для nUnit, xUnit, MBUnit и т. д. Аль. Кроме того, похоже, что мне нужно создать записи реестра. У кого-нибудь есть дополнительная информация?
Update: я определил ответ на этот вопрос с помощью исследования, и он опубликован ниже.
Visual Web Developer (Express): настройка корня документа для среды разработки
Я разрабатываю сайт в Visual Web Dev Express, и когда я run/debug,, я хотел бы иметь возможность установить корень документа моего приложения, чтобы я мог использовать более безопасные пути, такие как "/css/style.css "вместо"css/style.css". Как мне это сделать?
.NET-получить протокол, хост и порт
Есть ли простой способ в .NET быстро получить текущий протокол, хост и порт? Например, если я нахожусь на следующем URL:
http://www.mywebsite.com:80/pages/page1.aspx
Мне нужно вернуться:
http://www.mywebsite.com:80
Я знаю, что могу использовать Request.Url.AbsoluteUri для получения полного URL, и я знаю, что могу использовать Request.Url.Authority для получения хоста и порта, но я не уверен в лучшем способе получения протокола без разбора строки URL.
Есть какие-нибудь предложения?
Как вы передаете сообщения/ошибки уровня обслуживания на более высокие уровни с помощью MVP?
В настоящее время я пишу приложение ASP.Net от UI вниз. Я внедряю архитектуру MVP, потому что я устал от Winforms и хотел чего-то, что имело лучшее разделение проблем.
Таким образом, с MVP презентатор обрабатывает события, вызванные представлением. Вот некоторый код, который у меня есть, чтобы иметь дело с созданием пользователей:
public class CreateMemberPresenter
{
private ICreateMemberView view;
private IMemberTasks tasks;
public CreateMemberPresenter(ICreateMemberView view)
: this(view, new StubMemberTasks())
{
}
public CreateMemberPresenter(ICreateMemberView view, IMemberTasks tasks)
{
this.view = view;
this.tasks = tasks;
HookupEventHandlersTo(view);
}
private void HookupEventHandlersTo(ICreateMemberView view)
{
view.CreateMember += delegate { CreateMember(); };
}
private void CreateMember()
{
if (!view.IsValid)
return;
try
{
int newUserId;
tasks.CreateMember(view.NewMember, out newUserId);
view.NewUserCode = newUserId;
view.Notify(new NotificationDTO() { Type = NotificationType.Success });
}
catch(Exception e)
{
this.LogA().Message(string.Format("Error Creating User: {0}", e.Message));
view.Notify(new NotificationDTO() { Type = NotificationType.Failure, Message = "There was an error creating a new member" });
}
}
}
У меня есть моя основная проверка формы, выполненная с использованием встроенных элементов управления проверкой .Net, но теперь мне нужно проверить, что данные достаточно удовлетворяют критериям для уровня сервиса.
Допустим, могут отображаться следующие сообщения уровня сервиса:
- Учетная запись электронной почты уже существует (сбой)
- Ссылка на введенного пользователя не существует (сбой)
- Длина пароля превышает допустимую длину хранилища данных (сбой)
- Участник создан успешно (success)
Предположим также, что на уровне сервиса будет больше правил, которые UI не может предвидеть.
В настоящее время у меня есть уровень сервиса, который бросает исключение, если все пошло не так, как планировалось. Это достаточная стратегия? Этот код пахнет для вас, ребята? Если бы я написал такой уровень сервиса, вы были бы раздражены необходимостью писать докладчиков, которые используют его таким образом? Коды возврата кажутся слишком старой школой, и bool просто недостаточно информативен.
Редактировать не по OP: слияние в последующих комментариях, которые были опубликованы в качестве ответов OP
Cheekysoft, мне нравится концепция a ServiceLayerException. У меня уже есть глобальный модуль исключений для исключений, которые я не ожидаю. Считаете ли вы, что все эти пользовательские исключения утомительны? Я думал, что ловить базовый класс исключений было немного вонючим, но не был точно уверен, как продвигаться оттуда.
tgmdbm, мне нравится умное использование выражения lambda там!
Спасибо Cheekysoft за последующие действия. Поэтому я предполагаю, что это будет стратегия, если вы не возражаете, чтобы пользователь отображал отдельную страницу (Я в первую очередь веб-разработчик), если исключение не обрабатывается.
Однако, если я хочу вернуть сообщение об ошибке в том же представлении, где пользователь представил данные, вызвавшие ошибку, мне придется поймать исключение в Презентаторе?
Вот как выглядит CreateUserView, когда ведущий обработал ServiceLayerException:
Для такого рода ошибок, это хорошо, чтобы сообщить об этом в том же представлении.
В любом случае, я думаю, что сейчас мы выходим за рамки моего первоначального вопроса. Я поиграю с тем, что вы опубликовали, и если мне понадобится дополнительная информация, я отправлю новый вопрос.
Динамический рендеринг asp:Image из BLOB записи в ASP.NET
Вот чего я хочу добиться. Я хочу дать пользователю возможность загрузить файл изображения, сохранить изображение в BLOB на сервере SQL, а затем использовать это изображение в качестве логотипа на других страницах сайта.
Я сделал это с помощью
Response.Clear();
Response.ContentType = "image/pjpeg";
Response.BinaryWrite(imageConents);
Response.End();
но для этого я использую пользовательский элемент управления в том месте, где я хочу показать изображение. Я хочу сделать это, если это возможно, используя элемент управления asp:Image или даже чистый старый элемент управления html image. Разве это возможно?
Управление по сравнению со стандартным HTML
Я вхожу в ASP.NET (C# - я знаю, что это не имеет значения для этого конкретного вопроса, но полное раскрытие и все такое), и хотя мне нравится, что элементы управления в стиле asp: избавляют меня от многих утомительных HTML-крафтов, я часто разочаровываюсь в определенных поведениях. Вчера вечером я столкнулся с одним из них при работе с главными страницами: мой <asp:BulletedList ID="nav"> , преобразованный в HTML, стал <ul id="ct100_nav"> .
Есть и другие проблемы-я заметил, что когда вы автоматически заполняете a DataGrid, он добавляет атрибуты к результирующей таблице, которые мне не обязательно там нужны.
Я знаю, что есть определенное количество "convention over configuration", которое вы должны принять, когда вы полагаетесь на рамки, чтобы взять на себя некоторые из ваших утомительных обязанностей, но "conventions" в этих случаях не столько какие-то установленные условности, а скорее ненужные дополнения. Я знаю, почему ID добавляет префикс, но я должен быть в состоянии настроить и отключить подобные вещи, тем более что, будучи немного евангелистом веб-стандартов, я все равно не дублирую HTML id на одной странице.
Поэтому вопрос здесь для тех разработчиков ASP.NET, которые более опытны, чем я: в вашем опыте разработки и развертывания приложений, как вы используете эти элементы управления? Может быть, вы снова прибегаете к жесткому коду HTML? Вы пользуетесь смесью? Я не хочу создавать свой HTML вокруг идиосинкразических причуд в этих элементах управления, но, если это возможно, я хотел бы использовать их, когда это возможно.
А что делать мальчику?
В чем разница между HttpHandler и веб-пользовательским элементом управления и когда использовать каждый из них?
Я широко использую пользовательские элементы управления, но никогда не использую HttpHandler, и мне было интересно, делаю ли я что-то неоптимальное или неправильное
Аутентификация на веб-сайте авторизации форм ASP.Net из консольного приложения
Я пытаюсь создать консольное приложение C#, чтобы автоматизировать захват определенных файлов с нашего сайта, в основном, чтобы сэкономить клики и, честно говоря, просто сделать это. Но я попал в ловушку, для которой я не смог найти рабочего решения.
Веб-сайт, к которому я пытаюсь подключиться, использует авторизацию форм ASP.Net, и я не могу понять, как аутентифицировать себя с ним. Это приложение является полным Хак, так что я могу жесткий код моего имени пользователя и пароля или любой другой необходимой информации auth, и само решение не должно быть что-то, что является достаточно жизнеспособным, чтобы освободить для обычных пользователей. Другими словами, если единственным возможным решением является взлом, я в порядке с этим.
В принципе, я пытаюсь использовать HttpWebRequest, чтобы вытащить сайт, который имеет список файлов, повторяя этот список, а затем загружая то, что мне нужно. Таким образом, фактическая работа на сайте довольно тривиальна, как только я могу заставить сайт считать меня авторизованным.
jQuery AJAX против UpdatePanel
У нас есть страница с тонной jQuery (примерно 2000 строк), которую мы хотим обрезать b/c это кошмар обслуживания, и его может быть проще поддерживать на сервере. Мы подумали о том, чтобы использовать для этого UpdatePanel. Однако нам не нравится тот факт, что UpdatePanel отправляет всю страницу обратно на сервер.
Этот выпадающего 2, зависит от выпадающих 1
У меня есть вид формы, в шаблоне редактирования у меня есть два раскрывающихся списка. Выпадающий список 1 явно задается со списком разрешенных значений. Он также установлен на autopostback. Выпадающий список 2 привязан к объекту objectdatasource, этот объект objectdatasource использует первый выпадающий список в качестве одного из своих параметров. (Идея заключается в том, что выпадающий 1 ограничивает то, что показано в выпадающем 2)
При первом просмотре шаблона редактирования элемента он работает нормально. Но если в выпадающем списке 1 выбран другой элемент, он возвращается назад и генерирует ошибку
Методы привязки данных, такие как Eval(), XPath(), и Bind() можно только использовать в контексте элемента управления с привязкой к базе данных.
Вот выпадающий список #2:
<asp:DropDownList ID="ProjectList" runat="server" SelectedValue='<%# Bind("ConnectToProject_ID","{0:D}") %>' DataSourceID="MasterProjectsDataSource2" DataTextField="Name" DataValueField="ID" AppendDataBoundItems="true">
<asp:ListItem Value="0" Text="{No Master Project}" Selected="True" />
</asp:DropDownList>
А вот и MasterProjectDataSource2:
<asp:ObjectDataSource ID="MasterProjectsDataSource2" runat="server"
SelectMethod="GetMasterProjectList" TypeName="WebWorxData.Project" >
<SelectParameters>
<asp:ControlParameter ControlID="RPMTypeList" Name="RPMType_ID"
PropertyName="SelectedValue" Type="Int32" />
</SelectParameters>
</asp:ObjectDataSource>
Любая помощь в том, как заставить это работать, будет очень оценена.
Почему сжатие ASP.NET gzip портит CSS?
У меня есть приложение ASP.NET webforms (3.5 SP1), над которым я работаю, и пытаюсь включить gzip fpr HTML и CSS, которые спускаются по трубе. Я использую эту реализацию (и попробовал несколько других, которые подключаются к Application_BeginRequest), и, похоже, она разрушает внешний файл CSS, который используют страницы, но intermittently...suddenly все стили исчезнут при обновлении страницы, останутся на некоторое время, а затем внезапно снова начнут работать.
И IE7, и FF3 демонстрируют такое поведение. При просмотре CSS с помощью панели инструментов веб-разработчика, он возвращает тарабарщина. Заголовок cache-control проходит как "private,", но я не знаю достаточно, чтобы выяснить, является ли это фактором, способствующим или нет.
Кроме того, это выполняется на сервере разработки ASP.NET. Может быть, это было бы хорошо с IIS, но я разрабатываю на XP, и это будет IIS5.
Как мне кластеризировать папку загрузки с ASP.Net?
У нас есть ситуация, когда пользователям разрешено загружать контент, а затем отдельно вносить некоторые изменения, а затем отправлять форму на основе этих изменений.
Это прекрасно работает в односерверной среде, отличной от failover, однако мы хотели бы получить какое-то решение для совместного использования файлов между серверами, поддерживающими failover.
Кто-нибудь сталкивался с этим в прошлом? И какие решения вы смогли разработать? Очевидно, что сохранение в базе данных является одним из вариантов, но мы предпочли бы избежать этого.
440   4   03:18, 9th August, 2020
ASP.NET учебники
можете ли вы порекомендовать несколько хороших учебников ASP.NET или хорошую книгу? Должен ли я сразу перейти к ASP.NET MVC/html/javascript или сначала изучить веб-формы?
Спасибо
Как декодировать viewstate
Мне нужно увидеть содержимое viewstate страницы asp.net. Я искал декодер viewstate, нашел декодер ViewState Fridz Onion , но он запрашивает url страницы, чтобы получить ее viewstate. Поскольку мое viewstate формируется после обратной передачи и приходит в результате операции в панели обновления, я не могу предоставить url. Мне нужно скопировать & вставить строку viewstate и посмотреть, что там внутри. Существует ли инструмент или веб-сайт, который может помочь просматривать содержимое viewstate?
ASP.NET-создание собственной системы маршрутизации
В недавнем проекте я построил свой собственный фреймворк MVC в PHP. Одной из вещей, которые я реализовал, была система маршрутизации. Я использовал mod_rewrite Apache для отправки всех запросов в index.php, а затем проанализировал URI, чтобы извлечь информацию и направить запрос.
Сейчас я занимаюсь ASP.NET, и мне интересно, могу ли я выполнить что-то подобное. Есть ли способ направить все запросы (подобно тому, как это делает WordPress) на одну страницу, где выполняется центральная обработка маршрута? Я знаю о структуре MVC для ASP.NET, но я хотел бы попробовать это сам, поскольку я занимаюсь этим и учусь.
EDIT: BTW, мой хостинг-провайдер запускает IIS 6
Как сделать так, чтобы ведущие нули могут быть зачищены при импорте excel doc с использованием c#
Я могу подключиться к файлу excel и прочитать его без проблем. Но при импорте таких данных, как zipcodes, которые имеют ведущие нули, как предотвратить excel от угадывания типа данных и в процессе удаления ведущих нулей?
ASP.Net: как сделать разбиение на страницы с повторителем?
Я использую элемент управления Repeater на своем сайте для отображения данных из базы данных. Мне нужно сделать разбиение на страницы ("теперь отображается страница 1 из 10", 10 элементов на странице и т. д.), Но я не уверен, что я собираюсь сделать это наилучшим образом.
Я знаю, что управление повторителем не имеет встроенной пагинации, поэтому мне придется сделать свой собственный. Есть ли способ сообщить элементу управления DataSource, чтобы он возвращал строки 10-20 гораздо большего результирующего набора? Если нет, то как мне записать это в запрос (SQL Server 2005)? В настоящее время я использую ключевое слово TOP, чтобы вернуть только первые 10 строк, но я не уверен, как отобразить строки 10-20.
Форма post не содержит textbox данных [ASP.NET C#]
У меня есть несколько элементов управления " ASP:TextBox " на форме (около 20).
При загрузке формы текстовые поля заполняются из базы данных.
Пользователь может изменить заполненные значения, и когда они отправляют форму, я беру значения, отправленные на сервер, и условно сохраняю их (определяется некоторой бизнес-логикой).
Все текстовые поля, кроме 1, работают по назначению.
Нечетное поле out при обратной передаче не содержит обновленного значения, введенного пользователем в поле.
При отладке приложения становится ясно, что myTextBox.Text отражает старое, предварительно заполненное значение, а не новое, предоставленное пользователем.
Во всех остальных окнах правильно отображаются соответствующие значения, предоставленные пользователем.
Я действительно нашел обходной путь.
Мое решение состояло в основном в извлечении значения текстового поля из объекта Request.Form : Request.Form[myTextBox.UniqueID], который действительно содержит предоставленное пользователем значение.
Что же здесь происходит?
Как я уже упоминал, другие текстовые поля получают предоставленные пользователем значения просто отлично, и это конкретное проблемное текстовое поле не имеет никакой логики, связанной с ним-оно просто принимает значение и сохраняет его.
Основное отличие этого текстового поля от других заключается в том, что это многострочное поле (для ввода заметок), которое, как я полагаю, отображается как тег HTML "textarea" вместо тега "input" в ASP.NET.
Как лучше всего справиться с кэшем и кнопкой возврата браузера?
Как лучше всего обращаться с пользователем, возвращающимся на страницу, на которой были кэшированы элементы в приложении asp.net? Есть ли хороший способ захватить кнопку Назад (событие?) и обрабатывать кэш таким образом?
Необходимо проверить условие таймаута ajax
Как говорится в заголовке, у меня есть обработчик обратного вызова таймаута на вызове ajax, и я хочу иметь возможность проверить это условие, но ничего не приходит в голову сразу о том, как я могу заставить мое приложение попасть в это состояние, есть какие-либо предложения?
Бесплатные темы ASP.Net и / или CSS
Где я могу получить некоторые прилично выглядящие бесплатные темы ASP.Net или CSS?
Что делает IISReset?
На IIS 6, что делает сброс IIS?
Пожалуйста, сравните с переработкой пула приложений и остановкой и запуском веб-сайта ASP.NET.
Если вы заменяете DLL или редактируете / заменяете web.config на веб-сайте ASP.NET, это то же самое, что остановить и запустить этот веб-сайт?
Системы отчетности для ASP.NET
Каковы лучшие инструменты отчетности с открытым исходным кодом (open source и коммерческие) для ASP.NET, аналогичные Crystal Reports для ASP.NET?
Лучшие практики для рефакторинга классического ASP?
Я должен сделать некоторые значительные разработки в большой, старой, спагеттированной системе ASP. Я долгое время был вдали от ASP, сосредоточив свою энергию на Rails развитии.
Один из основных шагов, который я предпринял, - это рефакторинг страниц в суб-файлы и функции со значимыми именами, чтобы, по крайней мере, было легко понять, что происходит в верхней части файла.
Есть ли достойная MVC структура для ASP? Или это лучшая практика, как по крайней мере получить бизнес-логику из представлений? (Я помню, что в свое время делал много включений-это все еще способ сделать это?)
Я бы тоже хотел провести модульное тестирование бизнес-логики, но, может быть, я прошу слишком многого?
Обновление:
В проекте более 200 ASP скриптов, несколько тысяч строк длиной ;) UGH!
Мы можем выбрать "big rewrite", но до тех пор, когда я буду менять страницу, Я хочу потратить немного дополнительного времени на уборку спагетти.
Опыт использования ASP.NET MVC Framework
Мне интересно, что люди испытывают, используя фреймворк ASP.NET MVC? В частности, я ищу обратную связь о типе опыта, который люди имеют, используя фреймворк.
Что люди используют для своего механизма просмотра? Как насчет уровня БД, NHibernate, LINQ до SQL или что-то еще?
Я знаю, что stackoverflow использует MVC, поэтому, пожалуйста, скажите этот сайт.
Спасибо.
Почему выбор NHibernate над всем остальным? Я не против NHibernate, просто интересуюсь рациональным.
От Monorail до ASP.Net MVC
В последний раз, когда я брался за нетривиальное приложение .Net/C#, я использовал замок Monorail и, в целом, наслаждался опытом. Early-access/preview выпуски .Net MVC еще не были доступны. Многие "Microsoft shops" теперь найдут решение "official" более привлекательным. Кто-нибудь перешел от Monorail к .Net MVC.
Как вы нашли выключатель?
Каковы самые большие различия в настоящее время?
Почему Response.BufferOutput = False, не работает?
Эта проблема началась на другой доске , но Дэйв Уорд, который был очень быстрым и полезным, тоже здесь, поэтому я хотел бы забрать здесь, надеюсь, последний оставшийся кусочек головоломки.
В основном, я искал способ сделать постоянные обновления веб-страницы из долгого процесса. Я думал, что AJAX - это правильный путь, но у Дэйва есть хорошая статья об использовании JavaScript . Я интегрировал его в свое приложение, и он отлично работал на моем клиенте, но NOT мой сервер WebHost4Life. У меня есть еще один сервер @ Brinkster и решил попробовать его там и он DOES работает. Все коды одинаковы на моем клиенте, WebHost4Life и Бринкстере, так что, очевидно, что-то происходит с WebHost4Life.
Я планирую написать им email или запросить техническую поддержку, но я хотел бы быть активным и попытаться выяснить, что может происходить с их концом, чтобы вызвать эту разницу. Я сделал все возможное с моим кодом, чтобы отключить буферизацию, как Page.Response.BufferOutput = False . Какие настройки сервера они могли бы реализовать, чтобы вызвать эту разницу? Есть ли какой-нибудь способ обойти его самостоятельно, без их помощи? А если нет, то что им нужно будет делать?
Для справки, ссылка на рабочую версию более простой версии моего приложения находится @ http://www.jasoncomedy.com/javascriptfun/javascriptfun.aspx , а та же версия, которая не работает, находится @ http://www.tabroom.org/Ajaxfun/Default.aspx . Вы заметите, что в рабочей версии вы получаете обновления с каждым шагом, но в той, которая этого не делает, он сидит там долгое время, пока все не будет сделано, а затем делает все обновления для клиента сразу ... и от этого мне становится грустно.
Модульное тестирование IHttpModule
Как вы проводите модульный тест a HttpModule в asp.net, учитывая, что HttpApplication и HttpContext не реализуют интерфейс ?
ASP.NET Формы Авторизации
Я работаю на веб-сайте, построенном с чистыми HTML и CSS, и мне нужен способ ограничить доступ к страницам, расположенным в определенных каталогах на сайте. Решение, которое я придумал, было, конечно, ASP.NET формы авторизации. Я создал форму входа в систему Visual Studio по умолчанию и настроил пользователей, роли и ограничения доступа с помощью мастера Visual Studio. Проблема в том, что я не могу войти на сайт с учетными данными, которые я установил.
Я использую IIS 7.
Фильтрация тегов привязки в строке
Мне нужно отфильтровать якорные теги в строке. Например,
Check out this site: <a href="http://www.stackoverflow.com">stackoverflow</a>
Мне нужно иметь возможность отфильтровать тег привязки к этому:
Check out this site: http://www.stackoverflow.com
Этот формат также не может быть постоянным. У тега Привязки могут быть и другие атрибуты. Кроме того, в строке может быть более 1 якорного тега. Я делаю фильтрацию в vb.net, прежде чем он пойдет в базу данных.
Скрыть столбец в динамических данных ASP.NET
Есть ли способ применить атрибут к файлу модели в динамических данных ASP.NET, чтобы скрыть столбец?
Например, в настоящее время я могу установить отображаемое имя столбца, как это:
[DisplayName("Last name")]
public object Last_name { get; set; }
Есть ли подобный способ скрыть колонку?
Edit: большое спасибо Кристиану Хагелиду за то, что он прошел лишнюю милю и дал точный ответ :-)
Ошибка регистрации Webpart в журнале событий
Мы создали несколько пользовательских веб-частей для SharePoint 2007. Они прекрасно работают. Однако всякий раз, когда они загружаются, мы получаем сообщение об ошибке в журнале событий:
ошибка инициализации безопасного управления - Assembly: ...
assembly на самом деле загружается нормально. Кроме того, он правильно указан в web.config и GAC .
Любые идеи о том, как остановить эти (Фантом?) ошибки будут оценены по достоинству.
Что такое ASP.NET?
Я был строго в среде C++ в течение многих лет (и специализированных статистических языков). Visual Studio до 2001 года, а Borland с тех пор. В основном специализированные настольные приложения для клиентов.
Я не остаюсь намеренно невежественным, но за эти годы, когда я погрузился в другие вещи, я провел свое время, играя с JavaScript, PHP и многими Python.
Является ли " ASP.NET " языком? Является ли C# языком, а" ASP.NET " - фреймворком? Какой хороший ответ на вопрос "Что такое ASP.NET"? Есть ли соответствие между ASP.NET и чем-нибудь, с чем я был бы знаком в C++?
Я знаю, что могу погуглить тот же заголовок, но я бы предпочел увидеть ответы от этой толпы. (Кроме того, в будущем, я думаю, что Google должен указывать здесь на подобные вопросы.)
Asp.net первый запуск сайта происходит очень медленно
Первый раз, когда я загружаю сайт на рабочий веб-сервер, он запускается очень медленно, последующие страницы загружаются очень быстро (включая домашнюю страницу).
Я предварительно скомпилировал сайт, но ничего не изменилось.
У меня нет никакого кода при запуске приложения. У меня нет кэшированных элементов.
Есть какие-нибудь идеи? Как я могу узнать, что происходит?
asp.net mvc-подпапки
Как новая реализация Microsoft asp.net mvc обрабатывает секционирование вашего приложения - например:
--index.aspx
--about.aspx
--contact.aspx
--/feature1
--/feature1/subfeature/action
--/feature2/subfeature/action
Я думаю, что я пытаюсь сказать, что, кажется, все должно идти в корень папок views/controllers, которые могут стать громоздкими при работе над проектом, который, если он построен с помощью веб-форм, может иметь много-много папок и подпапок для разделения приложения.
Я думаю, что получаю модель MVC, и мне нравится ее внешний вид по сравнению с веб-формами, но все же я понимаю, как вы будете строить большой проект на практике.
ASP.Net: использование System.Web.UI.Control.ResolveUrl() в общей / статической функции
Как лучше всего использовать ResolveUrl() в общей / статической функции в Asp.Net? Мое текущее решение для VB.Net-это:
Dim x As New System.Web.UI.Control
x.ResolveUrl("~/someUrl")
Или C#:
System.Web.UI.Control x = new System.Web.UI.Control();
x.ResolveUrl("~/someUrl");
Но я понимаю, что это не лучший способ назвать его.
Uncollapsible CollapsiblePanelExtender
У меня есть CollapsiblePanelExtender, который не рухнет. У меня есть "collapsed" установлен в true и все ControlID установлены правильно. Я пытаюсь свернуться, и он проходит через анимацию, но затем почти мгновенно расширяется. Это находится в пользовательском элементе управления со следующей структурой.
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
DataSourceID="odsPartners" Width="450px" BorderWidth="0"
ShowHeader="false" ShowFooter="false" AllowSorting="true"
onrowdatabound="GridView1_RowDataBound">
<Columns>
<asp:TemplateField HeaderText="Contract Partners" SortExpression="Name">
<ItemTemplate>
<asp:Panel id="pnlRow" runat="server">
<table>
...Stuff...
</table>
</asp:Panel>
<ajaxToolkit:CollapsiblePanelExtender runat="server" ID="DDE"
Collapsed="true" ImageControlID="btnExpander" ExpandedImage="../Images/collapse.jpg" CollapsedImage="../Images/expand.jpg"
TargetControlID="DropPanel" CollapseControlID="btnExpander" ExpandControlID="btnExpander" />
<asp:Panel ID="DropPanel" runat="server" CssClass="CollapsedPanel">
<asp:Table ID="tblContracts" runat="server">
<asp:TableRow ID="row" runat="server">
<asp:TableCell ID="spacer" runat="server" Width="30"> </asp:TableCell>
<asp:TableCell ID="cellData" runat="server" Width="400">
<uc1:ContractList ID="ContractList1" runat="server" PartnerID='<%# Bind("ID") %>' />
</asp:TableCell>
</asp:TableRow>
</asp:Table>
</asp:Panel>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="tbFilter" EventName="TextChanged" />
</Triggers>
</asp:UpdatePanel>
Как вы программно заполняете форму и 'POST' веб-страницу?
Используя C# и ASP.NET, я хочу программно заполнить некоторые значения (4 текстовых поля) на веб-странице (форма), а затем 'POST' эти значения. Как мне это сделать?
Edit: уточнение: есть сервис (www.stopforumspam.com), где вы можете отправить ip, имя пользователя и адрес email на их странице 'add'. Я хочу иметь возможность создать ссылку/кнопку на странице моего сайта, которая заполнит эти значения и отправит информацию без необходимости копировать/вставлять их и нажимать кнопку Отправить.
Дополнительные разъяснения: как автоматизированные спам-боты заполняют формы и нажимают кнопку Отправить, если они были написаны в C#?
Postback с измененной строкой запроса из выпадающего списка в ASP.NET
Моя страница asp.net будет отображать различные элементы управления, основанные на том, какой отчет пользователь выбрал, например, некоторые отчеты требуют 5 раскрывающихся списков, некоторые два флажка и 6 раскрывающихся списков).
Они могут выбрать отчет двумя способами. С SelectedReport=MyReport в строке запроса или выбрав его из раскрывающегося списка. И это обычный случай, когда они приходят на страницу с SelectedReport в строке запроса, а затем меняют отчет, выбранный в раскрывающемся списке.
Мой вопрос заключается в том, есть ли возможность заставить выпадающее меню изменить строку запроса, когда она выбрана. Поэтому я бы хотел, чтобы SelectedReport=MyNewReport было в строке запроса и на странице Для обратной публикации.
В данный момент он просто выполняет обычную обратную передачу, которая оставляет SelectedReport=MyReport в строке запроса, даже если это не текущий выбранный отчет.
Edit: и мне также нужно сохранить ViewState.
Я попытался сделать Server.Transfer(Request.Path + "?SelectedReport=" + SelectedReport, true) в обработчике событий для выпадающего списка, и это работает функционально мудро, к сожалению, потому что это Server.Transfer (чтобы сохранить ViewState) вместо Response.Redirect URL отстает от того, что показано.
Может быть, я прошу невозможного или иду совершенно неверным путем.
@Craig коллекция QueryString доступна только для чтения и не может быть изменена.
@Jason это было бы здорово, если бы я не потерял ViewState, не так ли? (Извините, что я добавил Это, увидев ваш ответ).
Вход в систему безопасности IE6 (отладка через VirtualPC)
Я отлаживаю свое приложение ASP.NET на моем поле Windows XP с виртуальным каталогом, настроенным в IIS (5.1).
Я также запускаю VirtualPC с XP и IE6 для целей тестирования. Когда я подключаюсь к своей реальной машине с виртуальной машины, я ввожу URL: http://machinename/projectname .
Я получаю всплывающее окно безопасности для подключения к моей машине (что я ожидаю), но поле имени пользователя отключено. Я не могу изменить его с machinename\Guest на machinename\username для подключения.
Как я могу получить это, чтобы включить, чтобы я мог ввести правильные учетные данные.
ASP.NET JavaScript Обратные Вызовы Без Полного PostBacks?
Я собираюсь запустить довольно тяжелую функцию Ajax в приложении моей компании. Что мне нужно сделать, так это сделать обратный вызов Ajax каждые несколько минут, когда пользователь был на странице.
- Мне не нужно делать никаких обновлений DOM до, после или во время обратных вызовов.
- Мне не нужна никакая информация со страницы, просто файл cookie сайта, который всегда должен быть отправлен с запросами в любом случае, и значение ID.
Мне любопытно узнать, есть ли какой-нибудь чистый и простой способ сделать обратный вызов JavaScript Ajax на страницу ASP.NET, не отправляя обратно rest информации на странице. Я хотел бы не делать этого, если это возможно.
Я действительно просто хочу иметь возможность вызвать один метод на странице, ничего больше.
Кроме того, я ограничен ASP.NET 2.0, поэтому я не могу использовать ни одну из новых функций 3.5 framework ASP AJAX, хотя я могу использовать расширения ASP AJAX для платформы 2.0.
ОБНОВЛЕНИЕ
Я решил принять ответ DanP, поскольку он, похоже, именно то, что я ищу. Наш сайт уже использует jQuery для некоторых вещей, поэтому я, вероятно, буду использовать jQuery для выполнения запросов, поскольку по моему опыту он работает намного лучше, чем фреймворк AJAX ASP.
Как вы думаете, каким будет лучший способ передачи данных в IHttpHandler? Должен ли я добавить переменные в строку запроса или POST данные, которые мне нужно отправить?
Единственное, что я думаю, что мне нужно отправить, - это один ID, но я не могу решить, какой лучший способ отправить ID и заставить IHttpHandler обработать его. Я хотел бы предложить решение, которое предотвратило бы случайный или преднамеренный доступ человека с базовыми компьютерными навыками непосредственно к странице или повторение запросов. Разве это возможно?
ASP.NET AJAX и исключение PageRequestManagerParserErrorException
Кто-нибудь сталкивался с этим сообщением об ошибке раньше при использовании таймера на странице ASP.NET для обновления DataGrid каждые X секунд?
Поиск google дал эту запись в блоге и многое другое, но ничего, что, кажется, относится ко мне еще.
Полный текст сообщения об ошибке ниже:
Sys.WebForms.PageRequestManagerParserErrorException: сообщение, полученное с сервера, не может быть проанализировано. Распространенными причинами этой ошибки являются случаи, когда ответ изменяется с помощью вызовов Response.Write(), фильтров ответов, HttpModules или включен сервер trace.
Общее количество строк в элементе управления GridView с использованием LinqDataSource и подкачки
У меня есть проблема с получением общего количества строк для элементов, отображаемых в A Gridview с помощью подкачки и с A LinqDataSource в качестве источника данных.
Я испробовал несколько подходов:
protected void GridDataSource_Selected(object sender, LinqDataSourceStatusEventArgs e)
{
totalLabel.Text = e.TotalRowCount.ToString();
}
возвращает -1 каждый раз.
protected void LinqDataSource1_Selected(object sender, LinqDataSourceStatusEventArgs e)
{
System.Collections.Generic.List<country> lst = e.Result as System.Collections.Generic.List<country>;
int count = lst.Count;
}
только дает мне подсчет для текущей страницы, а не общее количество.
Есть еще какие-нибудь предложения?
Каков "best" способ создания эскиза с помощью ASP.NET?
История: пользователь загружает изображение, которое будет добавлено в фотогалерею. В процессе загрузки нам необходимо а) сохранить изображение на жестком диске веб-сервера и б) сохранить миниатюру изображения на жестком диске веб-сервера.
"Best" здесь определяется как
- Относительно легко внедряется, понимается и поддерживается
- Результаты в миниатюре разумного качества
Производительность и высокое качество миниатюр являются второстепенными.
Лучший способ поделиться ASP.NET .ascx элементами управления между различными приложениями веб-сайта?
Предположим, у вас есть 2 различных приложения ASP.NET в IIS. Кроме того, у вас есть некоторые элементы управления ASCX, которые вы хотите совместно использовать в этих двух приложениях.
Как лучше всего создать "библиотеку пользовательских элементов управления", чтобы можно было использовать одну и ту же реализацию элементов управления в двух приложениях, не дублируя код?
Элементы управления имеют ASCX с кодом HTML + позади.
Составные элементы управления будут сложными, потому что мы работаем с дизайнерами, которые используют синтаксис HTML в файлах ASCX для стилизации элементов управления.
Тундей, мы используем здесь SVN. У вас есть пример того, как реализовать ваше предложение? Как SVN может совместно использовать элементы управления ASP.NET?
Спасибо!
В ASP.NET, каковы различные способы встроенного кода в .аспн?
Могу ли я получить "когда использовать" для этих и других?
<% %>
<%# EVAL() %>
Спасибо
Как бы вы обрабатывали ошибки при использовании jQuery.ajax()?
При использовании jQuery с ajax способ представить данные форме, что является лучшим способом, чтобы обрабатывать ошибки? Это пример того, как может выглядеть вызов:
$.ajax({
url: "userCreation.ashx",
data: { u:userName, p:password, e:email },
type: "POST",
beforeSend: function(){disableSubmitButton();},
complete: function(){enableSubmitButton();},
error: function(xhr, statusText, errorThrown){
// Work out what the error was and display the appropriate message
},
success: function(data){
displayUserCreatedMessage();
refreshUserList();
}
});
Запрос может завершиться неудачей по ряду причин, таких как дублирование имени пользователя, дублирование адреса email и т. д., и ashx записывается для создания исключения, когда это происходит.
Моя проблема, похоже, заключается в том, что, бросая исключение, ashx вызывает неопределенность statusText и errorThrown .
Я могу добраться до XMLHttpRequest.responseText , который содержит HTML, который составляет стандартную страницу ошибки .net.
Я нахожу заголовок страницы в responseText и использую заголовок, чтобы выяснить, какая ошибка была выброшена. Хотя у меня есть подозрение, что это развалится, когда я включу пользовательские страницы обработки ошибок.
Должен ли я выбрасывать ошибки в ashx, или я должен возвращать код состояния как часть данных, возвращенных вызовом userCreation.ashx , а затем использовать это, чтобы решить, какие действия предпринять?
Как вы справляетесь с этими ситуациями?
Поиск элементов управления, использующих определенный интерфейс в ASP.NET
Имея чертовски много времени с этим, хотя я чувствую, что упускаю что-то очевидное. У меня есть элемент управления, который наследует от System.Web.UI.WebControls.Button, а затем реализует интерфейс, который я настроил. Так что думай...
public class Button : System.Web.UI.WebControls.Button, IMyButtonInterface { ... }
В коде страницы я хотел бы найти все экземпляры этой кнопки из ASPX. Поскольку я действительно не знаю, каким будет тип , просто интерфейс , который он реализует, это все, что мне нужно делать при циклическом прохождении через дерево управления. Дело в том, что мне никогда не приходилось определять, использует ли объект интерфейс, а не просто тестирует его тип. Как я могу перебирать дерево управления и дергать все, что реализует IMyButtonInterface чистым способом (Linq было бы хорошо)?
Опять же, знаю, что это что-то очевидное, но только сейчас начал активно использовать интерфейсы, и я не могу сосредоточиться на результатах Google, чтобы понять это :)
Edit: GetType() возвращает фактический класс, но не возвращает интерфейс, поэтому я не могу проверить это (например, он вернет " MyNamespace.Button "вместо" IMyButtonInterface "). При попытке использовать " as " или " is " в рекурсивной функции параметр type даже не распознается внутри функции! Это довольно странно. Так
if(ctrl.GetType() == typeToFind) //ok
if(ctrl is typeToFind) //typeToFind isn't recognized! eh?
Определенно почесываю голову над этим.
Лучший способ модульного тестирования ASP.NET MVC методы действий, которые используют BindingHelperExtensions.UpdateFrom?
При обработке сообщения формы у меня есть что-то вроде
public ActionResult Insert()
{
Order order = new Order();
BindingHelperExtensions.UpdateFrom(order, this.Request.Form);
this.orderService.Save(order);
return this.RedirectToAction("Details", new { id = order.ID });
}
Я не использую явные параметры в методе, поскольку я ожидаю, что мне придется адаптироваться к переменному количеству полей и т. д. и метод с 20 + параметрами не является привлекательным.
Я полагаю, что мой единственный вариант здесь-это макет всего HttpRequest, эквивалентный тому, что сделал Роб Конери. Это лучшая практика? Трудно сказать, с рамками, которые так новы.
Я также видел решения, связанные с использованием ActionFilter, чтобы вы могли преобразовать приведенную выше сигнатуру метода в нечто вроде
[SomeFilter]
public Insert(Contact contact)
С помощью Visual Studio 2008 с проектами веб-Deployment - получаю сообщение об ошибке, находя aspnet_merge.exe
Я недавно обновил проект VS2005 web deployment до VS2008 - и теперь я получаю следующую ошибку при построении:
The specified task executable location "bin\aspnet_merge.exe" is invalid.
Вот источник ошибки (из файла web deployment targets):
<Target Name="AspNetMerge" Condition="'$(UseMerge)' == 'true'" DependsOnTargets="$(MergeDependsOn)">
<AspNetMerge
ExePath="$(FrameworkSDKDir)bin"
ApplicationPath="$(TempBuildDir)"
KeyFile="$(_FullKeyFile)"
DelaySign="$(DelaySign)"
Prefix="$(AssemblyPrefixName)"
SingleAssemblyName="$(SingleAssemblyName)"
Debug="$(DebugSymbols)"
Nologo="$(NoLogo)"
ContentAssemblyName="$(ContentAssemblyName)"
ErrorStack="$(ErrorStack)"
RemoveCompiledFiles="$(DeleteAppCodeCompiledFiles)"
CopyAttributes="$(CopyAssemblyAttributes)"
AssemblyInfo="$(AssemblyInfoDll)"
MergeXmlDocs="$(MergeXmlDocs)"
ErrorLogFile="$(MergeErrorLogFile)"
/>
Каково же решение этой проблемы?
Примечание-Я также создал проект web deployment с нуля в VS2008 и получил ту же ошибку.
Создание UserControl программно внутри ретранслятора?
У меня есть ретранслятор, который привязан к некоторым данным.
Я привязываюсь к событию ItemDataBound и пытаюсь программно создать UserControl :
В двух словах:
void rptrTaskList_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
CCTask task = (CCTask)e.Item.DataItem;
if (task is ExecTask)
{
ExecTaskControl foo = new ExecTaskControl();
e.Item.Controls.Add(foo);
}
}
Проблема заключается в том, что пока привязка работает, пользовательский элемент управления не отображается на главной странице.
Есть какие-нибудь идеи?
SimpleModal Break ASP.Net Postbacks
Я использую jQuery и SimpleModal в проекте ASP.Net, чтобы сделать несколько хороших диалогов для веб-приложения. К сожалению, любые кнопки в модальном диалоге больше не могут выполнять свои обратные вызовы, что на самом деле неприемлемо.
Есть один источник, который я нашел с обходным путем, но за всю свою жизнь я не могу заставить его работать, главным образом потому, что я не полностью понимаю все необходимые шаги.
У меня также есть обходной путь, который должен заменить обратную связь, но он уродлив и, вероятно, не самый надежный. Мне бы очень хотелось, чтобы эти постбэки снова заработали. Есть какие-нибудь идеи?
UPDATE: я должен уточнить, что обратные сообщения не работают, потому что Javascript, используемый для выполнения обратных сообщений, каким-то образом сломался, поэтому при нажатии на кнопку ничего не происходит.
Как отслеживать запросы на Linq-to-sql DataContext
В подкасте herding code 14 кто-то упоминает, что stackoverflow отображает запросы, которые были выполнены во время запроса в нижней части страницы.
По-моему, это отличная идея. Каждый раз, когда страница загружается, я хочу знать, какие операторы sql выполняются, а также подсчет общего числа DB поездок туда и обратно. Есть ли у кого-нибудь аккуратное решение этой проблемы?
Как вы думаете, какое количество запросов является приемлемым? Я думал, что во время разработки мое приложение может выдать исключение, если для отображения страницы требуется более 30 запросов.
EDIT: мне кажется, я не совсем ясно объяснил свой вопрос. Во время запроса HTTP веб-приложение может выполнить десяток или более операторов sql. Я хочу, чтобы эти утверждения были приложены к нижней части страницы вместе с подсчетом количества утверждений.
ВОТ МОЕ РЕШЕНИЕ:
Я создал класс TextWriter, в который может записываться DataContext:
public class Logger : StreamWriter
{
public string Buffer { get; private set; }
public int QueryCounter { get; private set; }
public Logger() : base(new MemoryStream())
{}
public override void Write(string value)
{
Buffer += value + "<br/><br/>";
if (!value.StartsWith("--")) QueryCounter++;
}
public override void WriteLine(string value)
{
Buffer += value + "<br/><br/>";
if (!value.StartsWith("--")) QueryCounter++;
}
}
В конструкторе DataContext я настроил регистратор:
public HeraldDBDataContext()
: base(ConfigurationManager.ConnectionStrings["Herald"].ConnectionString, mappingSource)
{
Log = new Logger();
}
Наконец, я использую событие Application_OnEndRequest , чтобы добавить результаты в нижнюю часть страницы:
protected void Application_OnEndRequest(Object sender, EventArgs e)
{
Logger logger = DataContextFactory.Context.Log as Logger;
Response.Write("Query count : " + logger.QueryCounter);
Response.Write("<br/><br/>");
Response.Write(logger.Buffer);
}
Открыть файлы из сетевой папки в веб-приложение c#
У меня есть веб-приложение, которое должно читать (и, возможно, записывать) файлы из общего сетевого ресурса. Мне было интересно, как лучше всего это сделать?
Я не могу предоставить сетевой службе или учетным записям aspnet доступ к сетевому ресурсу. Я вполне мог бы использовать олицетворение.
Сетевой ресурс и веб-приложение размещаются в одном домене, и я могу создать нового пользователя в домене специально для этой цели, однако я не совсем уверен, как соединить точки между созданием filestream и указанием учетных данных для использования в веб-приложении.
К сожалению, диск не сопоставлен с сетевым диском на машине, он доступен мне только как сетевой ресурс, поэтому, к сожалению, я не могу сделать прозрачный вызов.
Есть одна проблема, которую я могу придумать с олицетворением... Я могу выдавать себя только за одного пользователя на домен приложения, но я счастлив быть исправленным. Возможно, мне придется записать этот файл в несколько разных общих папок, что означает, что мне придется выдавать себя за нескольких пользователей.
Мне нравится идея создания токена... если я смогу это сделать, то смогу заранее запросить у пользователей их учетные данные, а затем динамически применить защиту и выдавать им значимые сообщения об ошибках, если доступ будет запрещен... Я ухожу играть, но вернусь с обновлениями.
Что означает ServerVariables["APPL_MD_PATH"] извлекает путь метабазы для приложения для ISAPI DLL?
Я пытаюсь заставить приложение ASP.net (v2) работать в отладчике и продолжать работать с проблемой, потому что значение, возвращаемое следующим кодом, является пустой строкой:
HttpContext.Current.Request.ServerVariables["APPL_MD_PATH"].ToLower()
Я выяснил, что это "Retrieves the metabase path for the Application for the ISAPI DLL". Может ли кто - нибудь пролить свет на то, что это значит и почему он может быть пустым?
Этот код работает в нашей живой среде, но я хочу, чтобы он работал на моем PC и мог проходить через исходный код, чтобы я мог посмотреть на другую проблему...
Подавить диалоговое окно NTLM после несанкционированного запроса
В недавнем проекте sharepoint я реализовал веб-часть аутентификации, которая должна заменить диалоговое окно аутентификации NTLM. Он отлично работает, пока пользователь предоставляет действительные учетные данные. Всякий раз, когда пользователь предоставляет неверные учетные данные, диалоговое окно NTLM появляется в Internet Explorer.
Мой код Javascript, который выполняет аутентификацию через XmlHttpRequest, выглядит следующим образом:
function Login() {
var request = GetRequest(); // retrieves XmlHttpRequest
request.onreadystatechange = function() {
if (this.status == 401) { // unauthorized request -> invalid credentials
// do something to suppress NTLM dialog box...
// already tried location.reload(); and window.location = <url to authentication form>;
}
}
request.open("GET", "http://myServer", false, "domain\\username", "password");
request.send(null);
}
Я не хочу, чтобы диалоговое окно NTLM отображалось, когда пользователь предоставляет недопустимые учетные данные. Вместо этого должна быть выполнена обратная передача с помощью кнопки входа в форму аутентификации. Другими словами, браузер не должен узнать о моем несанкционированном запросе.
Есть ли способ сделать это через Javascript?
Установить ASP.net executionTimeout в коде / "refresh" запрос
У меня будет страница ASP.net, которая создает несколько листов Excel и отправляет их пользователю. Проблема в том, что иногда я получаю тайм-ауты Http, предположительно потому, что запрос выполняется дольше, чем executionTimeout (110 секунд по умолчанию).
Мне просто интересно, какие у меня есть варианты, чтобы предотвратить это, не желая вообще увеличивать executionTimeout в web.config ?
В PHP существует set_time_limit , который можно использовать в функции для продления ее жизни, но я не видел ничего подобного в C#/ASP.net?
Как вы справляетесь с длительными функциями в ASP.net?
Как вы управляете версиями в веб-приложении?
Каковы стратегии управления версиями веб-сайта application/?
Я заметил, что здесь, в бета-версии, есть номер редакции svn в нижнем колонтитуле, и это идеально подходит для приложения, которое использует svn над одним репозиторием. Но что делать, если вы используете внешние программы или другое приложение управления версиями, которое выпускает отдельные файлы?
Это кажется простым для настольного приложения, но я не могу найти подходящий способ управления версиями для веб-приложения asp.net.
NB я не уверен, что был полностью ясен со своим вопросом.
- Я хочу знать, как построить и автоматически увеличить номер версии для приложения asp.net.
- Меня не интересует, как связать его с svn.
Как синхронизировать историю браузера при использовании Ajax?
Я пишу простое приложение для фотоальбома, используя ASP.NET Ajax.
Приложение использует асинхронные вызовы Ajax для предварительной загрузки следующей фотографии в альбом, не изменяя URL в браузере.
Проблема заключается в том, что когда пользователь нажимает кнопку Назад в браузере, приложение не возвращается к предыдущей фотографии, а переходит на домашнюю страницу приложения.
Есть ли способ обмануть браузер, чтобы добавить каждый вызов Ajax в историю просмотров?
Лучшая практика для динамически добавляемых классов Web.UI.ITemplate
У нас есть несколько шаблонов столбцов ASP.Net dataview, которые динамически добавляются в dataview в зависимости от Столбцов, выбранных пользователями.
Эти шаблонные ячейки должны обрабатывать пользовательские привязки данных:
public class CustomColumnTemplate:
ITemplate
{
public void InstantiateIn( Control container )
{
//create a new label
Label contentLabel = new Label();
//add a custom data binding
contentLabel.DataBinding +=
( sender, e ) =>
{
//do custom stuff at databind time
contentLabel.Text = //bound content
};
//add the label to the cell
container.Controls.Add( contentLabel );
}
}
...
myGridView.Columns.Add( new TemplateField
{
ItemTemplate = new CustomColumnTemplate(),
HeaderText = "Custom column"
} );
Во-первых, это кажется довольно грязным, но есть также проблема ресурсов. Label генерируется и не может быть удален в InstantiateIn , потому что тогда он не будет там для привязки данных.
Есть ли лучший шаблон для этих элементов управления?
Есть ли способ убедиться, что метка удалена после привязки данных и визуализации?