Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> И ещё вопросы по VS как среде разработки 
:(
    Опции темы
Vit
Дата 16.4.2007, 19:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Vitaly Nevzorov
****


Профиль
Группа: Экс. модератор
Сообщений: 10964
Регистрация: 25.3.2002
Где: Chicago

Репутация: 1
Всего: 207



На сей раз интересует как работать с хэлпом. Вот простой пример в ASP.NET

Есть объект Request. У него некое свойство есть "по умолчанию". Насколько я понимаю оно обзывается Indexer и к нему можно обратиться просто указав в квадратных скобках параметер, типа для данного случая Request["MyParamName"]. А теперь вопросы:

1. Вопрос первый. Если я этот класс Request вижу впервый раз и смотрю на него как баран на новые ворота, откуда можно узнать что у него есть такое свойство по умолчанию, и что оно делает. Например в данном случае ткнув на F1 на слове Request, я получаю следующую страницу хэлпа:

Цитата

Gets the HttpRequest object for the requested page. 

Namespace: System.Web.UI
Assembly: System.Web (in system.web.dll)

Syntax
Visual Basic (Declaration) 
Public ReadOnly Property Request As HttpRequest
 
Visual Basic (Usage) 
Dim instance As Page
Dim value As HttpRequest

value = instance.Request

 
C# 
public HttpRequest Request { get; }
 
C++ 
public:
property HttpRequest^ Request {
    HttpRequest^ get ();
}
 
J# 
/** @property */
public HttpRequest get_Request ()

 
JScript 
public function get Request () : HttpRequest

 



Property Value
The current HttpRequest associated with the page. 
Exceptions
Exception type Condition 
HttpException
 Occurs when the HttpRequest object is not available. 
 

Remarks
The HttpRequest object contains information about the current HTTP request.

Example
The following example demonstrates how to obtain the Headers collection from the HttpRequest object and write it to an ASP.NET page.

{динючий кусок кода приведенный в качестве примера я здесь вырезал} 
 

Platforms
Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.

Version Information
.NET Framework
Supported in: 2.0, 1.1, 1.0

See Also
Reference
Page Class
Page Members
System.Web.UI Namespace
HttpException
HttpRequest
HttpResponse


Вроде ясно отсылают к описанию класса HttpRequest, кликаем на справку по HttpRequest, получаем:


Цитата

Enables ASP.NET to read the HTTP values sent by a client during a Web request. 

Namespace: System.Web
Assembly: System.Web (in system.web.dll)

Syntax
Visual Basic (Declaration) 
Public NotInheritable Class HttpRequest
 
Visual Basic (Usage) 
Dim instance As HttpRequest

 
C# 
public sealed class HttpRequest
 
C++ 
public ref class HttpRequest sealed
 
J# 
public final class HttpRequest
 
JScript 
public final class HttpRequest
 

Remarks
The methods and properties of the HttpRequest class are exposed through the Request properties of the HttpApplication, HttpContext, Page, and UserControl classes.

Topic Location 
How to: Pass Values Between ASP.NET Web Pages Building ASP .NET Web Applications 

Example
The following code example uses the StreamWriter class to write the values of several HttpRequest class properties values to a file. For properties that are of type string, the values are HTML encoded as they are written to the file. Properties that represent a collection are looped through, with each key/value pair they contain written to the file.

Visual Basic  Copy Code 
{динючий кусок кода приведенный в качестве примера я здесь вырезал} 

.NET Framework Security
AspNetHostingPermission  for operating in a hosted environment. Demand value: LinkDemand; Permission value: Minimal. 

Inheritance Hierarchy
System.Object 
  System.Web.HttpRequest

Thread Safety
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Platforms
Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.

Version Information
.NET Framework
Supported in: 2.0, 1.1, 1.0

See Also
Reference
HttpRequest Members
System.Web Namespace

 Send comments about this topic to Microsoft. 


Итого нигде об этом не говорится, или я просто не понимаю то что читаю (такое тоже может быть). Я посмотрел и Members этого класса, Members перечисленны, а то что используется по умолчанию там нет, или я его просто не вижу, не зная куда смотреть?


2. Второй вопрос. Допустим я допёр как-то что делает Request["MyParamName"]  - прочитал на форуме, наткнулся на пример в том же хэлпе и т.п. Как узнать тип значений с которыми эта штука оперирует? При работе с обычными свойствами и методами всё ясно, для начала хотябы сама подсказка в выпадающем листе даёт названия требуемых и возвращаемых типов данных, но тут ни фига! Никакой подсказки по ходу, никаких хинтов... Можно конечно извратится и присвоить что-то неправильное и прочитать что компиллятор скажет в ошибке, какой тип он не может конвертнуть в какой... но может есть более удобоваримый способ это делать?

Например  мне надо установить в комбобоксе активным некий элемент, я это, следуя  справке делаю примерно так:

Код

     ddlSubcategory.SelectedIndex = ddlSubcategory.Items.IndexOf(ddlSubcategory.Items.FindByValue("MyString"));



Не правда ли кошмар? А ведь спинным мозгом чуствую что наверняка это же самое можно сделать как минимум в 2 раза короче... Только пока не понимаю как в справке найти то что  мне нужно :(




Это сообщение отредактировал(а) Vit - 16.4.2007, 19:51


--------------------
With the best wishes, Vit
I have done so much with so little for so long that I am now qualified to do anything with nothing
Самый большой Delphi FAQ на русском языке здесь: www.drkb.ru
PM MAIL WWW ICQ   Вверх
Exception
Дата 16.4.2007, 21:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 4525
Регистрация: 26.12.2004

Репутация: 29
Всего: 186



Цитата(Vit @  16.4.2007,  20:45 Найти цитируемый пост)
Есть объект Request. У него некое свойство есть "по умолчанию". Насколько я понимаю оно обзывается Indexer и к нему можно обратиться просто указав в квадратных скобках параметер, типа для данного случая Request["MyParamName"].


Само свойство обычно называется Item (впрочем, это не так важно), а терминологически ты прав -- это индексатор.

Цитата(Vit @  16.4.2007,  20:45 Найти цитируемый пост)
Как узнать тип значений с которыми эта штука оперирует? 


F2 -- Object Browser.
Там найдёшь и класс, и все его свойства и методы (и их типы).
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.0426 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.