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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> ASP, помогите разобраться 
:(
    Опции темы
Лена
Дата 18.10.2007, 14:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

Репутация: нет
Всего: 11



Для связи с сервером баз данных PostgreSQL скачала необходимые компоновочные блоки Mono.Security.dll и Npgsql.dll. Создала файл Default.aspx File->New->File->WebForm. Хочу увидеть в гриде таблицу с сервера PostgreSQL. 
Весь мой код в Default.aspx выглядит так:
Код

<%@ Page Language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">
    protected void OnClick(object sender, EventArgs e)
    {
        DataTable data = new DataTable();
        NpgsqlConnection conn = new NpgsqlConnection("Server=192.168.1.253;Port=5432;User Id=postgres;Password=1234;Database=my;");
        conn.Open();
        NpgsqlCommand command = new NpgsqlCommand("select * from log", conn);
        NpgsqlDataReader dr = command.ExecuteReader();
        data.Load(dr);
        dataGridView1.DataSource = data;
        dr.Close();
        conn.Close();
    }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:GridView ID="GridView1" runat="server">
        </asp:GridView>
    
    </div>
        <asp:Button ID="Button1" runat="server" Text="Button" Width="230px" OnClick="OnClick" />
    </form>
</body>
</html>



Для запуска приложения в VS мне надо набрать в командной строке VS:
webdev.webserver.exe /port:12345 /path:"Путь к папке где лежит Default.aspx"

Чтобы увидеть страницу с гридом мне надо затем в браузере набрать http://127.0.0.1:12345

Два вопроса:
Где у VS командная строка для проекта ASP, не могу найти.  smile 
И как правильно подключить к этому проекту Npgsql.dll? Написать так: <%@ Import Namespace = "Npgsql" %> ???

Этот проект для классической Form1 работает без проблем:
Код

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using Npgsql;

namespace WindowsPS1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            DataTable data = new DataTable();
            NpgsqlConnection conn = new NpgsqlConnection("Server=192.168.1.253;Port=5432;User Id=postgres;Password=1234;Database=my;");
            conn.Open();
            NpgsqlCommand command = new NpgsqlCommand("select * from log", conn);
            NpgsqlDataReader dr = command.ExecuteReader();
            data.Load(dr);
            BindingSource bs = new BindingSource();
            bs.DataSource = data;
            bindingNavigator1.BindingSource = bs;
            dataGridView1.DataSource = bs;
            //dataGridView1.DataSource = data;
            dr.Close();
            conn.Close();
        }
    }
}


Как его переделать в ASP?

Это сообщение отредактировал(а) Лена - 18.10.2007, 14:45
PM MAIL   Вверх
zaver
Дата 18.10.2007, 15:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Цитата

Как его переделать в ASP?

не путай ASP с ASP.NET - это очень разные вещи
PM MAIL WWW ICQ Skype YIM MSN   Вверх
Лена
Дата 18.10.2007, 15:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

Репутация: нет
Всего: 11



Подразумевается ASP.NET ведь раздел форума назвается "NET для новичков"  smile 
PM MAIL   Вверх
tol05
Дата 18.10.2007, 15:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

Репутация: 36
Всего: 170



Цитата(Лена @  18.10.2007,  14:45 Найти цитируемый пост)
Где у VS командная строка для проекта ASP, не могу найти.

Правой кнопкой на web-site  в солюшен эксплорере. Дальше - Start Options  (или Property Pages, все равно туда же потом попадешь)  и ищи радиобаттон Start external program. Там же и аргументы набираются.


Цитата(Лена @  18.10.2007,  14:45 Найти цитируемый пост)
И как правильно подключить к этому проекту Npgsql.dll? Написать так: <%@ Import Namespace = "Npgsql" %> ???

Директива Import  - импорт намеспейса для скриптов (аналог обычного using).
А чтобы dll подключить - можно использовать директиву <%@ Assembly %> или просто положить библиотеку в папку bin сайта


--------------------
На хорошей работе и сны хорошие снятся.
PM MAIL   Вверх
Лена
Дата 18.10.2007, 15:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

Репутация: нет
Всего: 11



Цитата(tol05 @  18.10.2007,  15:35 Найти цитируемый пост)
Правой кнопкой на web-site  в солюшен эксплорере.


Я создаю по книге  File->New->File->WebForm. Получаю файл Default.aspx. В солюшен эксплорере нет узла web-site (рис).  smile 

Присоединённый файл ( Кол-во скачиваний: 10 )
Присоединённый файл  new_1.gif 24,57 Kb
PM MAIL   Вверх
tol05
Дата 18.10.2007, 16:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

Репутация: 36
Всего: 170



так создавай через Solution->Add->New Web Site
А потом уже в веб-сайт добавляй страницы.

В первом дотнете были web-проекты, там можно было через свойства проекта (build или debug вкладка, не помню) command-line аргументы задавать. 


--------------------
На хорошей работе и сны хорошие снятся.
PM MAIL   Вверх
Лена
Дата 18.10.2007, 16:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

Репутация: нет
Всего: 11



Цитата(tol05 @  18.10.2007,  16:15 Найти цитируемый пост)
Add->New Web Site


Спасибо, буду пробывать так. 

P.S.
Не поняла мысли автора книги как создать одномодульное приложение ASP.NET как у него описано через  File->New->File->WebForm...


Это сообщение отредактировал(а) Лена - 18.10.2007, 16:21
PM MAIL   Вверх
Лена
Дата 18.10.2007, 16:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

Репутация: нет
Всего: 11



Так сделала через New Web Site. Добавила папку Bin туда добавила Mono.Security.dll и Npgsql.dll.
Код файла Defauli.aspx.cs
Код

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using Npgsql;


public partial class _Default : System.Web.UI.Page 
{
    protected void Page_Load(object sender, EventArgs e)
    {
        
    }
    protected void OnClick(object sender, EventArgs e)
    {
        DataTable data = new DataTable();
        NpgsqlConnection conn = new NpgsqlConnection("Server=192.168.1.253;Port=5432;User Id=postgres;Password=1234;Database=my;");
        conn.Open();
        NpgsqlCommand command = new NpgsqlCommand("select * from log", conn);
        NpgsqlDataReader dr = command.ExecuteReader();
        data.Load(dr);
        GridView1.DataSource = data;
        dr.Close();
        conn.Close();
    }
}
 

Код файла Defauli.aspx
Код

<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:GridView ID="GridView1" runat="server">
        </asp:GridView>
    
    </div>
        <asp:Button ID="Button1" runat="server" OnClick="OnClick" Text="Button" />
    </form>
</body>
</html>



В командной строке написала:
webdev.webserver.exe /port:12345 /path:"C:\Documents and Settings\Kitty\Desktop\WebForm"

При компиляции ошибка на рисунке. smile 

Присоединённый файл ( Кол-во скачиваний: 10 )
Присоединённый файл  new_1.gif 8,20 Kb
PM MAIL   Вверх
Лена
Дата 18.10.2007, 17:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

Репутация: нет
Всего: 11



Попробовала через меню "билд веб сайт". Однако при вводе строки в окне браузера  http://127.0.0.1:12345/WebForm/Default1.aspx страница не доступна.

Автор книги говорит что для тестирования страниц VS поставляет webdev.webserver.exe Попробовала в Fare задать
Webdev.WebServer.exe  -?
Получила окно на рисунке. Что мне сделать чтобы увидеть мою страницу в браузере?


Присоединённый файл ( Кол-во скачиваний: 8 )
Присоединённый файл  new_1.gif 13,83 Kb
PM MAIL   Вверх
tol05
Дата 18.10.2007, 17:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

Репутация: 36
Всего: 170



просто не используй командные аргументы (никакие), а после создания сайта и страницы - правой кнопкой на странице в solution explorere щелкни и выбери view in browser
или, если у тебя это стартовая страница проекта (правой кнопкой на странице и выбрать Set as start page), нажми F5

почаще правой кнопкой кликай на всем в окнах. Смотри.


--------------------
На хорошей работе и сны хорошие снятся.
PM MAIL   Вверх
Лена
Дата 18.10.2007, 17:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

Репутация: нет
Всего: 11



Цитата(tol05 @  18.10.2007,  17:09 Найти цитируемый пост)
в solution explorere щелкни и выбери view in browser


Попробовала, попала на страницу: http://localhost:1757/WebSite1/ но там стандартное сообщение "Невозможно отобразить страницу"/

Мой проект находиться на рабочем столе: C:\Documents and Settings\Kitty\Desktop\WebForm

Как-то тяжело мне с ASP.NET  smile 

PM MAIL   Вверх
tol05
Дата 18.10.2007, 18:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

Репутация: 36
Всего: 170



Лена, давай начнем все сначала? Ок?

1. Открываем студию. Пустую совсем. 
2. Делаем File->New->Web Site и записываем куда-нибудь на диск (D:\TempFolder\WebSite1 например). У тебя появляется солюшен, в нем - веб сайт, в сайте - страница default.aspx
3. На сайте в солюшен эксплорере правой кнопкой. Выбираем "Add Тew Item"
4. В открывшемся окне выбираем "Web Form" и имя ей даем Default2.aspx
5а. На этой веб-форме правой кнопкой. Выбираем "View in browser" и все. 
5b. Или этой веб-форме правой кнопкой. Выбираем "Set as start page" и нажимаем F5 - отладка в дебаге. Появляется вопрос: "у Вас не конфиг-файла Web.config, добавить?" Говорим "Да". Запускается режим дебага, браузер открывает страницу
6. Внизу на панели инструментов (notification area) появляется значок dev.web.server-а. Это значит, что не IIS работает с запросом на страницу, а тот самый, долгожданный, ненаглядный Webdev.WebServer

Попробуй сделать все, что я написал, а потом уже поговорим о внешних серверах, командных аргументах и т.д. и т.п. ОК?
smile




--------------------
На хорошей работе и сны хорошие снятся.
PM MAIL   Вверх
Лена
Дата 18.10.2007, 18:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

Репутация: нет
Всего: 11



Цитата(tol05 @  18.10.2007,  18:38 Найти цитируемый пост)
1. Открываем студию. Пустую совсем. 
2. Делаем File->New->Web Site и записываем куда-нибудь на диск (D:\TempFolder\WebSite1 например). У тебя появляется солюшен, в нем - веб сайт, в сайте - страница default.aspx
3. На сайте в солюшен эксплорере правой кнопкой. Выбираем "Add Тew Item"
4. В открывшемся окне выбираем "Web Form" и имя ей даем Default2.aspx
5а. На этой веб-форме правой кнопкой. Выбираем "View in browser" и все. 


Сделала все как написано. Попала на страницу: http://localhost:1172/TempFolder/Default2.aspx на ней написано обычное "Невозможно отобразить страницу". Что должно быть на этой странице?
Дополнительно внизу появился ярлык (рис).


Это сообщение отредактировал(а) Лена - 18.10.2007, 18:51

Присоединённый файл ( Кол-во скачиваний: 7 )
Присоединённый файл  new_1.gif 3,43 Kb
PM MAIL   Вверх
tol05
Дата 18.10.2007, 19:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

Репутация: 36
Всего: 170



чудо свершилось!

теперь  переделай Default2.aspx (HTML разметка) так:
Код

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
<script runat="server">
protected void Button1_Click(object sender, EventArgs e)
{
    Button1.Text = "На меня нажали";
}
</script>
    <form id="form1" runat="server">
    <div>
        <asp:Button ID="Button1" runat="server" Text="Нажми на меня" OnClick="Button1_Click" />
    </div>
    </form>
</body>
</html>

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

Вот и все. Страница разработана. Разрабатывай свои страницы, как в книге пишут.


--------------------
На хорошей работе и сны хорошие снятся.
PM MAIL   Вверх
Лена
Дата 19.10.2007, 10:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

Репутация: нет
Всего: 11



Цитата(tol05 @  18.10.2007,  19:03 Найти цитируемый пост)
в броузере, когда страница откроется, нажми на кнопку. Должен измениться ее текст.


Видимо, что-то с настройками на моем рабочем сетевом компьютере. Изменила Default2.aspx. В режиме разработки появилась кнопка, но при попытке команды View in Browser попадаю на страницу, на которой стандартное сообщение "Невозможно отобразить страницу".

PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

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


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

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


 




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


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

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