| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Общие вопросы по .NET и C# > Написание скриптов на C# (batch) |
| Автор: Glo 17.6.2011, 13:33 |
| Всем здравствуйте ) Возник следующий вопрос: как правильно написать батч скрипт, который должен делать проверку xml файлов, ну и в лог файлы выводить результаты проверки? Речь идет о батч скриптах, код для обработки xml файлов будет писаться на С#. Из того что почитала в сети, то можно просто из батч файла запустить экзешник проги на С шарп, которая собственно и будет все делать, это правильный подход? видела вариант размещения кода на Си шарп прямо в батч файле, который передается запускаемому компилятору .NET FW-ка, создается экзешник... думаю идея ясна, но я не думаю, что это данный случай, скорее это интересная игрушка, а не правильный программинг. из краткого описания ТЗ, что я уже имею: "написать скрипты (бэтчи) для проверки xml. Условия - язык написания –не важно. Важно чтобы скрипт был инкапсулейтед –то есть веешь в себе и отдельно получался репорт" если кто объяснит мне грамотейке Буду благодарна за наводку как правильно подойти к написанию таких скриптов. Также не помешает ссылка на хорошее описание о коммандах в батч файлах. Гуглом пользовалась, http://msdn.microsoft.com/en-us/library/bb490869.aspx, кое что почитала, просто спрашиваю проверенные источники. |
| Автор: jonie 17.6.2011, 21:26 |
| Для проверки XML сущесвтуют схемы DTD и XSD. Вторый как-то более строгие. Для проверки на что-то (какие-то условия) внутри xml существуют языки XSLT, XQuery. что вы собственно собрались проверять C#-ом? А главное, зачем.. |
| Автор: Glo 17.6.2011, 21:49 | ||
jonie, спасибо за ваш ответ. зачем? так хочет работадатель. хочу взять маленький заказ, фриланс, я недавно закончила колледж по программированию, работы пока не нашла, а здесь очень простая задача, вроде знакомая мне, около года назад писала нечто подобное, только там было оконное приложение, WinForms, а здесь скрипт просят, батч файл, вот я и пытаюсь узнать как это правильно сделать. что проверять? в хмл файлах будет текст, который и надо будет проверить на корректность, типа пробелов до и после круглых скобок, знаков припенания и т.д., если надо, я могу конечно ТЗ привести, но данная тема была создана именно из за скрипта, как правильно его оформить. завтра буду с регулярками и хмл файлами разбираться, может конечно тоже вопросы возникнут ) насчет XSLT & XQuery - знакома с XQuery, мне его хватило для поставлнных передо мной задач в прошлом, сейчас надеюсь тоже хватит. задала вопрос на форуме майкрософт, мне там ответили, что надо запускать екзешник проги на С шарп, консольное приложение, с батч файла. видимо это нормальное решение, узнаю, что думает об этом заказчик. |
| Автор: Kefir 17.6.2011, 23:42 |
| "веешь в себе" мне кажется означает "вещь в себе" А вообще все правильно вам подсказали - пишете нормальное приложение, которое потом просто напросто вызываете из своего батника. Но с другой стороны - если "вещь в себе" подразумевает только наличие бат файла, то можете поизвращаться с запуском компилятора прямо из бат файла. К слову сказать я не совсем понимаю причин, по которым заказчик может хотеть конкретно бат файл. Смысла в этом нет никакого - почему нельзя скомпилировать нормальный exe и запускать его? Это я к тому, что вы бы с заказчиком поговорили на эту тему (точнее о причине такого запроса). Чтобы не получилось, что он собирается запускать ваши скрипты в каком-нибудь досе, где .НЕТа не существует в природе. Или же под батч файлами имеются не *.bat, а просто скрипты (к примеру для юниксов). В общем с таким странным ТЗ надо еще прояснить ситуацию прежде чем начинать работу. |
| Автор: Glo 18.6.2011, 00:39 | ||
Спасибо, я тоже уже думала, что надо ОС выяснить, на всякий случай. конечно же обсудим наличие фреймворка на компе, правда если речь о винде, то это не проблема. |
| Автор: Rohoss 18.6.2011, 11:03 |
| Вообще для таких вещей сам бог велел использовать http://ru.wikipedia.org/wiki/Windows_PowerShell |
| Автор: Glo 18.6.2011, 11:20 | ||
Суть проблемы в том, что командуют люди, и с этим приходится считаться :) |