Ru-Board.club
← Вернуться в раздел «Прикладное программирование»

» Программирование в среде .NET (ASP.NET,ADO.NET) на C#/VB.NET

Автор: v1rtyaluk
Дата сообщения: 25.07.2010 18:24
Mextrom
спасибо, сейчас попробую

и еще вопросик чуток на отвлеченную тему:
как писать в хмл файл который находится на веб-ресурсе?
читать хмл с сайта умею, а вот как писать???
Автор: Mextrom
Дата сообщения: 25.07.2010 18:47

Цитата:
и еще вопросик чуток на отвлеченную тему:
как писать в хмл файл который находится на веб-ресурсе?

Боюсь здесь помочь вряд ли смогу. Думаю, все будет зависеть от самого веб-ресурса, например, разрешается ли вообще туда файлы заливать. Можно попробовать использовать WebClient

Код: WebClient Client = new WebClient();
Client.UploadFile("http://www.csharpfriends.com/Members/index.aspx", "c:\file.xml");
Автор: v1rtyaluk
Дата сообщения: 25.07.2010 23:29
Mextrom
Нет, я имел другое ввиду.
Как мне писать в мой, уже существующий, хмл на моем ресурсе?
Допустим, у меня на сайте есть файл:
http://winsatana.narod.ru/test/example.xml

туда нужно записать некоторые данные, т.е. дописать.Как это сделать?

И еще вопросик:
Я слышал, что C# кроссплатформенный т.е. с помощью так называемого проекта Моно приложения можно запускать на других ОС(МакОС, Линукс и т.д.).Так в чем суть этого проекта Моно?
Автор: Omicron_Persey_8
Дата сообщения: 26.07.2010 17:42
v1rtyaluk
Mono - альтернативная реализация .NET Framework. Есть не только под GNU/Linux, но и под винду.
Wiki
Сайт проекта
В плане кроссплатформенности: если твое приложение зависит только от mscorlib.dll и System.dll, то после компиляции может быть и будет работать. А так, реализация оконной подсистемы там своя, WinForms под патентами, доступ к данным там свой, есть аналоги ASP.NET.
Под виндой работает медленнее .NET. Под Linux'ом - на любителя, я под него мало пишу.

А C# - это язык программирования, он от платформы не зависит. Где скомпилируешь - там и будет работать.
Автор: v1rtyaluk
Дата сообщения: 26.07.2010 19:29
Omicron_Persey_8
Я уже скачал и установил себе MonoDevelop под Windows.
Это выход,что на Моно под Виндоус я могу писать приложения только под Виндоус, а, допустим, на Моно под Мак - приложения для МакОС??
Автор: salexn1
Дата сообщения: 27.07.2010 12:59
В чем разница при написании следующего серверного кода на странице ASP:
<%= .... %> и <%# %>?
Автор: MagistrAnatol
Дата сообщения: 27.07.2010 15:56
народ подсобите с проблемой:
я в динамике на си шарпе под вынь ЦЕ создаю контролы:
uiList1.BeginAddControls();
for (i = 0; i <.....
{

uiListItem = new UIListItem();
uiListItem.Click += new EventHandler(uiListItem_Click);
uiListItem.DoubleClick += new EventHandler(uiListItem_DoubleClick);
....
uiList1.AddControl(uiListItem);
}
uiList1.EndAddControls();
и надо решить следующие задачи:
1. как удалить все контролы uiListItem из uiList1;
2. как в событии Клик
void uiListItem_Click(object sender, EventArgs e)
{
}
определить какой именно контрол нажат ?

Автор: Omicron_Persey_8
Дата сообщения: 27.07.2010 15:59
v1rtyaluk
Если ли будешь писать под Моно и в винде и в маке без использования платформенно-зависимых конструкций типа реестра, Event log'а или WMI, то в принципе переносимость будет достаточно высокой. Но это все на уровне исходного кода, компилировать придется для каждой платформы отдельно.

Добавлено:
MagistrAnatol

Цитата:
как удалить все контролы uiListItem из uiList1;

Удалить совсем или только из списка? Напиши тип uiList'а заодно.


Цитата:
2. как в событии Клик определить какой именно контрол нажат ?

В принципе, параметр sender на него и указывает:

Код: UIListItem clickedControl = (UIListItem)sender;
string name = clickedControl.Name;
Автор: v1rtyaluk
Дата сообщения: 27.07.2010 16:17
Omicron_Persey_8
Т.е. чтоб программа работала под Mac ее там-же надо скопировать, но не под Windows.
Насчет P\Invoke зависимостей таких библиотек как user32.dll то, вроде есть подобніе и для Мака и для Линукса.Или я неправ??
Автор: blaro
Дата сообщения: 27.07.2010 16:57
v1rtyaluk

Цитата:
Т.е. чтоб программа работала под Mac ее там-же надо скопировать, но не под Windows.

Не обязательно. Можно в винде скомпилить проект под мак. Моно это умеет делать. Вопрос только как?
Автор: Omicron_Persey_8
Дата сообщения: 27.07.2010 17:18
v1rtyaluk
Переносимость сборок написанных под Mono в основном на уровне исходного кода.

Цитата:
Насчет P\Invoke зависимостей таких библиотек как user32.dll то, вроде есть подобніе и для Мака и для Линукса

Для Linux такое есть, Wine называется. Но в чем смысл использовать user32, если его кроме винды нигде нет? Mono в качестве оконной подсистемы использует Gtk. Оно и для винды есть, и для мака, и для Linux'а.
Автор: v1rtyaluk
Дата сообщения: 27.07.2010 17:46
Omicron_Persey_8
Вы не так меня поняли, я имел ввиду, что, допустим, мои приложения зависят от платформы, а именно от Виндовс ОС то должны-же быть подобные библиотеки под той самый Мак или Линукс.

blaro

Цитата:
Можно в винде скомпилить проект под мак. Моно это умеет делать. Вопрос только как?

Может быть направите на нужный ресурс как это сделать без участия других ОСей?

И еще вопросик:
есть хмл-файл:

Код:
<?xml version="1.0" encoding="utf-8"?>
<Sections>
    <Designer.SidePictures>
        <Extra>
            <Name>Abstract</Name>
            <Vendor>Virtyaluk</Vendor>
            <URI>\Designer.SidePictures\Abstract.bmp</URI>
            <Information>Windows Side Picture | Standart</Information>
        </Extra>
    </Designer.SidePictures>
</Sections>
Автор: blaro
Дата сообщения: 27.07.2010 20:42
v1rtyaluk

Цитата:
Может быть направите на нужный ресурс как это сделать без участия других ОСей?

Сам не знаю. Но если в линуксе можно построить проект и скомпилить его под винду, зничит можно скомпилить и под мак. Может через консоль?
Автор: v1rtyaluk
Дата сообщения: 27.07.2010 22:57
blaro

Цитата:
Может через консоль?

Не имею представления как. Может найду кого-то в кого Линукс и\или Мак, что-бы мне скомпилировали.
Автор: ofj
Дата сообщения: 28.07.2010 06:36
Привет Всем!
Можно ли создать обработчик запросов с полощью VS 2008. Такой пример: клиент отправляет post запрос (свой id и тип запроса), сервер обработчик принимает эти данные и делает SQL запрос в MSSQL 2005 и получив ответ от MSSQL 2005 сервер обратно отправляет данные к тому же клиенту.
Если можно то приведите или дайте ссылку на пример.
Заранее спосибо Всем!
Автор: MagistrAnatol
Дата сообщения: 28.07.2010 08:11
Omicron_Persey_8
помогло, и ещо один вопросик по SQL CE - как переместить курсор в таблице на определенную позицию. Использую стандартные компоненты DateSet,DataSource,TableAdapter?
В билдере все просто - Table1(Query1)->Locate("...",key,Opts);


Добавлено:
код
UIListItem actUIList = (UIListItem)sender;
shopingListBindingSource.Position = shopingListBindingSource.Find("ShopingListId", actUIList.Tag);
почемуто не работает

Добавлено:
точнее работает но не совсем - у меня два TabPages - на одном грид(для проверки ) так вот по нем идет перемещение а на втором табе контрол для редактирования и вот в нем
курсор не перемещается ???
Автор: SIgor33
Дата сообщения: 28.07.2010 09:10
Извините за простой вопрос. Только начинаю работать на c#
пытаюсь подключиться к серверу MSSQL 2008 на VS 2008 пишет не та версия сервера. То есть при работе мне нужно использовать только MSSQL 2005?
Автор: Mextrom
Дата сообщения: 28.07.2010 09:39
v1rtyaluk

Цитата:
Вы не так меня поняли, я имел ввиду, что, допустим, мои приложения зависят от платформы, а именно от Виндовс ОС то должны-же быть подобные библиотеки под той самый Мак или Линукс.

Что имеется в виду под "мои приложения зависят от платформы"? C# нацелен на кроссплатформенность. Т.е. приложение, скомпилированное в Windows будет запускаться без перекомпиляции под другими ОС. Насчет Мака не знаю, но mono под linux сейчас частично держит даже 3.5 framework (вроде кроме wpf). Приложения написанные под framework 2.0 в windows (WinForms) у меня запускаются под mono. Правда бывают косяки, например, иногда не отображаются шрифты.
Автор: MagistrAnatol
Дата сообщения: 28.07.2010 09:41
разобрался я с курсором - ето глючит uiTextBox от http://www.devslide.com
может кто сталкивался с такой проблемой - подсобите
Автор: Mextrom
Дата сообщения: 28.07.2010 10:38
v1rtyaluk

Цитата:
как в него писать новые категории в ветвь Section\Designer.SidePicture не затирая то, что уже в нем есть?

Мне в голову приходит только один вариант - работать с локальной копией файла. Т.е. скачал, прочитал что нужно, записал что нужно в него (например, с помощью XmlDocument), сохранил и отправил файл на сервер, где он перезапишется.
Автор: v1rtyaluk
Дата сообщения: 28.07.2010 10:43
Mextrom

Цитата:
Что имеется в виду под "мои приложения зависят от платформы"?

что приложение зависит от таких библиотек как:
Iphlpapi.dll, Kernel32.dll, user32.dll
вроде есть альтернативные на Маке и Линуксе. Но, я никогда не писал под эти ОСьки, что там - не знаю.
Цитата:
Т.е. приложение, скомпилированное в Windows будет запускаться без перекомпиляции под другими ОС.

Мой екзе файл запустят другие ОС?
Автор: Mextrom
Дата сообщения: 28.07.2010 10:53
v1rtyaluk

Цитата:
Мой екзе файл запустят другие ОС?

Если установлена среда исполнения, то да. Я пробовал запускать программы, использующие WinForms и .NET Framework 2.0, в linux под mono.

Код: mono имя_файла.exe
Автор: v1rtyaluk
Дата сообщения: 28.07.2010 11:58
Mextrom
Нет, меня не устраивает такой подход.
Не в каждого юзера на компе стоит моно для запуска таких вещей.
Буду искать мак и линукс для компиляции под ось.
Автор: Mextrom
Дата сообщения: 28.07.2010 12:16
v1rtyaluk

Цитата:
Нет, меня не устраивает такой подход.
Не в каждого юзера на компе стоит моно для запуска таких вещей.
Буду искать мак и линукс для компиляции под ось.

Тогда поищите инфу по утилите NGen.exe. Она поставляется вместе с .NET Framework и позволяет компилировать сборку в родной код для выбранной платформы. Я правда не уверен, что она позволит скомпилить прогу в нативный код для какой-нибудь ОС, отличной от винды, но может есть аналоги.
Автор: blaro
Дата сообщения: 28.07.2010 14:00
v1rtyaluk
Чтобы прога написаная на C# работала на Маке, ее нужно отдельно компилить на Маке.
Я спросил у разрабов как сие можно сделать, и сейчас жду ответа.
Автор: Omicron_Persey_8
Дата сообщения: 28.07.2010 15:09
MagistrAnatol

Цитата:
код
UIListItem actUIList = (UIListItem)sender;
shopingListBindingSource.Position = shopingListBindingSource.Find("ShopingListId", actUIList.Tag);
почемуто не работает

Добавлено:
точнее работает но не совсем - у меня два TabPages - на одном грид(для проверки ) так вот по нем идет перемещение а на втором табе контрол для редактирования и вот в нем
курсор не перемещается ???

Как именно не работает? Ошибку кидает или просто не реагирует?

SIgor33

Цитата:
Извините за простой вопрос. Только начинаю работать на c#
пытаюсь подключиться к серверу MSSQL 2008 на VS 2008 пишет не та версия сервера. То есть при работе мне нужно использовать только MSSQL 2005?

Если пытаешься достучаться из Server Explorer\Data connections, то только до SQL Server 2005. До 2008-го не достучишься

Добавлено:
Mextrom

Цитата:
Тогда поищите инфу по утилите NGen.exe.

Если сборку обработать NGen, то ей для работы все равно будет нужен .NET Framework. Таким образом вы просто устраните необходимость в JIT-компиляции.
Автор: Mextrom
Дата сообщения: 28.07.2010 15:26
Omicron_Persey_8

Цитата:
Если сборку обработать NGen, то ей для работы все равно будет нужен .NET Framework. Таким образом вы просто устраните необходимость в JIT-компиляции.

Дык если человек собрался писать на шарпе (хоть и под мак), ему все равно нужна реализация framework`а.
Автор: Omicron_Persey_8
Дата сообщения: 28.07.2010 18:43
Mextrom
И я о том же. Причем тут NGen?
Автор: v1rtyaluk
Дата сообщения: 29.07.2010 00:11
Ребята, а можно производить в контролах замену текста на картинки??типа организовать смайлики
Автор: Omicron_Persey_8
Дата сообщения: 29.07.2010 06:49
v1rtyaluk

Цитата:
а можно производить в контролах замену текста на картинки??типа организовать смайлики

Можно, если контрол это поддерживает. Если нет, то придется рисовать самому: либо в обработчике события Paint (есть, например, у Form и PictureBox), либо при помощи Control.CreateGraphics. Во втором варианте за корретностью перерисовки придется следить самому.
Вот тут пример как рисовать произвольный текст повер ProgressBar'а

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102

Предыдущая тема: Как удалить/добавить/отключить/включить устройство?


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.