Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Разработка под ASP.NET > ASP.NET program - "My Voting" ?


Автор: jxr 31.10.2005, 21:37
Я хочу создать sample ASP.NET програм - "My Voting".
У меня 2 вопроса :
1) Как узнать адрес клиента ( IP address of client )
2) Как использавать виртуал address :
filestream=File.OpenRead( "c:\\ip.txt" ); как быт с localhost'ом ?
address=? : "/ip.txt" or "localhost/ip.txt" or ?
Спосибо!

Автор: Mad 31.10.2005, 22:01
jxr
1. Есть статическая переменная WebRequest.Request, в ней и смотри (там есть много свойств, в том числе и IP клиента)
2. HttpRequest.MapPath
детальней посмотри MSDN

Автор: Exception 31.10.2005, 22:21
а не Server.MapPath?

Автор: jxr 1.11.2005, 20:57
У меня Frameworks (v1.0.3705 и v1.1.4322)
1.abstract class System.Net.WebRequest. ... (static members:only 4 methods)
they are :
Create
CreateDefault
Equals
ReferenceEquals
RegisterPrefix

2.System.Web.HttpRequest class
Помогите с конструкторым !
public HttpRequest(
string filename,
string url,
string queryString
);
вообше аргументи (особенно queryString) ? (ничего о queryString. только - Получает сбор переменных строки запроса HTTP.)
метод MapPath() - Отображает виртуальный путь в запрошенном URL в физический путь в сервере для текущего запроса.
URL == url (constructor HttpRequest class) ???
пример с localhost 'ом !?
Спосибо !

Автор: arilou 2.11.2005, 02:01
Цитата(jxr @ 1.11.2005, 20:57)
пример с localhost 'ом !?

Код

// Page.Load event handler
string absolutePathToFile = this.Server.MapPath("/filename.txt"); // filename.txt is located in the root folder of the web application. returns absolute path to the file (e.g. c:\inetpub\wwwroot\webapplication1\filename.txt)


К WebRequest внутри code-behind класса ASPX страницы обращаются так: this.Request

Автор: jxr 11.11.2005, 00:22
Код

                absolutePathToFile = this.Server.MapPath("ip.txt");
                .........................................................
                filewrite=new StreamWriter(absolutePathToFile,true);
                filewrite.Write("Hello,World");
                filewrite.Flush();// bez etoqo toje.
                filewrite.Close();
                ..........................................................


Это ASP.NET program.("My Voting" )
Не записавает ничего в файл "ip.txt" !
Почему ?

Автор: Exception 11.11.2005, 22:15
не
Код

absolutePath = this.Server.MapPath("ip.txt");

а
Код

absolutePath = this.Server.MapPath("http://localhost/ip.txt");

Автор: jxr 11.11.2005, 23:45
дела не в этом !
это не работает.если и был то не эффективно !

Автор: Exception 13.11.2005, 22:35
ни хрена, извините, не понял. работает или нет? если нет, как оно себя проявляет? научитесь излагать свои мысли.

Автор: jxr 13.11.2005, 23:04
Почему писать адрессы файлых которие входят проект и находиться в сервере , в папке-проекта - так из далека ! http://www.yoursite/MyProjectFolder/ip.txt
Один и тотже проект в 2 разных серверах -- надо изменить код по свойму ! smile
НЕРАБОТАЕТ !

Автор: Exception 13.11.2005, 23:41
меняй www.yoursite.com на localhost. в чём трабл?!

Автор: jxr 14.11.2005, 02:45
*.aspx незнает что в каком каталоге находяться ? smile
Я попробывал
Код

absolutePath = this.Server.MapPath("ip.txt");

работает ! Считать могу ! smile
Но записавать не получается ?
[StreamWriter]

Автор: Exception 14.11.2005, 12:38
выпадает ошибка? какая?

Автор: Domestic Cat 14.11.2005, 17:34
А у асп есть пермишн на запись в эту папку?

Автор: jxr 14.11.2005, 23:30
Код

filewrite=new StreamWriter(absolutePathToFileIPs);
filewrite.Write(text);
filewrite.Close();

ошибка нет !
что тo не так ! после этого кода не может работаеть "Label lbl" !
lbl.Text+="chto ta 2"; не записаваеть. но до этого кода(filewrite) записал lbl.Text+="chto ta 1";
незнаю что та с ASP.NET'om ?

Автор: Domestic Cat 15.11.2005, 09:40
Ни хрена не понял.

Автор: Exception 15.11.2005, 10:14
КАКАЯ ОШИБКА ВЫЛЕЗАЕТ?!
ТЕКСТ EXCEPTIONа НАПИШИ!

Автор: mr.DUDA 15.11.2005, 12:30

 ! 
 
jxr, формулируйте Ваши вопросы более понятным способом. Если Вы плохо владеете русским языком, пользуйтесь средствами проверки грамматики из Microsoft Word.

Автор: jxr 16.11.2005, 00:43
Цитата

КАКАЯ ОШИБКА ВЫЛЕЗАЕТ?!
ТЕКСТ EXCEPTIONа

никакая !!! Вот ! Помогите !
http://www.bytes.nm.ru/WebForm1.aspx [click "Просмотр HTML-кода"]
http://www.bytes.nm.ru/WebForm1.aspx.cs

Автор: Domestic Cat 16.11.2005, 09:41
Естественно не записывает - на лоаде ты сохраняешь чего-то в инстанс переменные (Year, Month, ...) а на сабмите пытаешься их читать.
Перенеси код
Код

            Year=DateTime.Now.Year;
            Month=DateTime.Now.Month;
            Day=DateTime.Now.Day;
            Hour=DateTime.Now.Hour;
            ipaddress=this.Request.UserHostAddress;
            absolutePathToFile = this.Server.MapPath("ip.txt");//localhost/AspProg/ip.txt        


в метод btnSecim_Click.

Автор: jxr 17.11.2005, 22:05
Код

    public class WebForm1 : System.Web.UI.Page
    {
        protected int Year;
        protected int Month;
        protected int Day;
        protected int Hour;
............................................................

Year,Month,Day,Hour - они члены класса !!!

Автор: Domestic Cat 18.11.2005, 09:24
Ну и что с того? После загрузки - отправки респонса клиенту объект Page перестает существовать, соответственно все члены класса - тоже. HTTP - это stateless протокол.

Автор: jxr 18.11.2005, 23:58
ну тогда помогите ! Пожалуста !
НО! смотрите снова !
bytes.nm.ru/WebForm1.aspx.cs
Для теста переменных:
Код

lbl.Text="FOR TEST:"+absolutePathToFileIPs+"  "+text;

Что мне надо была ! Значения переменных есть !
И после записа в файл я писал и для проверки вот что !
Код

lbl.Text+="file writing END or else END";

НООО ! ничего в lbl.Text не добавился !
???
Помогите!
[Вот даже я попробываль записать не "text" - а filewrite.WriteLine("o , la la"); --- но резултать та же!]

Автор: mr.DUDA 21.11.2005, 20:18

 ! 
 
Уважаемый jxr, прошу лично Вас соблюдать впредь три простых правила:

1) Не употреблять в конце предложений восклицательных знаков - "!"
2) Не делать предложений, состоящих из одних вопросительных знаков - "???"
3) Слово "нада" правильно пишется как "надо"; в русском языке МАЛО слов, оканчивающихся на букву мягкий знак "ь", поэтому не надо вставлять эту букву везде где попало просто так; перед тем как задать вопрос, ПОЖАЛУЙСТА наберите Ваш вопрос в пустом документе Microsoft Word и исправьте ошибки.

Если Вам данные правила особенно неприятно соблюсти, или Вы считаете что участникам форума "по барабану", в каком стиле с ними разговаривают -- что ж... дело Ваше... вряд ли Вам будут отвечать так же часто, как сейчас.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)