Более профессиональную среду разработки C#. Интеллектуальное автодополнение, автоматизированное изменение исходных файлов, умная подсветка синтаксиса и многое другое.
Какое различие между Express и Pro?
VisualStudio C# 2010 это продукт компании Microsoft. Он выпускается в двух версиях — Express и Professional. Редакция Express бесплатна и вы можете скачать её отсюда: http://www.microsoft.com/express/vcsharp/ Редакция Professional не бесплатная, вы можете более подробнее узнать здесь: http://www.microsoft.com/visualstudio/en-us/products/professional/default.mspx
Интеграция Unity с VisualStudio позволит вам создавать и поддерживать файлы VisualStudio проекта автоматически. Кроме того, VisualStudio будет открыт после двойного щелчка по скрипту или по сообщению об ошибке в сонсоли Unity.
У меня есть Visual Studio Express, как я могу её использовать?
- В Unity выберите меню Assets->Sync MonoDevelop Project
- Найдите новый файл .sln в дирректории Unity проекта (на одну папку выше папки Assets)
- Откройте этот файл в Visual Studio Express.
- Теперь вы можете редактировать ваши файлы скриптов, и переходить назад в Unity чтобы их использовать.
У меня Visual Studio Profesional, как мне использовать её?
- В Unity, перейдите в Edit->Preferences, и убедитесь, что Visual Studio выбран как предпочтительный внешний редактор.
- Дважды кликните по C# файлу в вашем проекте. Visual Studio автоматически откроет этот файл для вас.
- Вы можете редактировать файл, сохранить и перейти обратно в Unity.
Важные пункты:
- Не смотря на то, что Visual Studio поставляется со своим собственным компилятором C#, и вы можете использовать его для проверки ваших скриптов на ошибки, Unity по прежнему использует собственный компилятор C# для компиляции ваших скриптов. Однако использование компилятора Visual Studio все равно очень эффективно, потому что вам не нужно постоянно переключаться в Unity чтобы проверить свои скрипты на наличие ошибок.
- Компилятор C# в Visual Studio обладает большим количеством возможностей чем C# компилятор в Unity. Это означает, что код (содержащий новейшие возможности C#) не вызовет ошибок в Visual Studio, но может вызвать ошибки в Unity.
- Unity автоматически создает и поддерживает файлы .sln и .csproj для Visual Studio. Когда кто-либо добавляет/переименовывает/перемещает/удаляет файлы из под Unity, Unity восстанавливает .sln и .csproj файлы. Так же вы можете добавить файлы в ваш проект Visual Studio. Unity импортирует эти файлы и в следующий раз создаст файлы проекта снова, включив в них добавленные вами файлы.
- Unity не обновит файлы проекта Visual Studio после обновления AssetServer или SVN. Вы можете вручную заставить Unity обновить файлы проекта Visual Studio через меню: Assets->Sync MonoDevelop Project
Источник: docs.unity3d.com
Установка visual studio 2017 добавить компоненты, дополнения. Уроки программирования для начинающих.
Visual studio. Как создать проект. Первая программа. C++ для начинающих. Урок #1.
Начало работы с SQLite в Visual Studio на C#: создание бд, таблиц, вставка записей и отображение
Для серьезных, высоконагруженных проектов с многопользовательской (или сетевой) поддержкой для работы с базами данных обычно используются сервера баз данных. Однако, для программ, которые будут работать на одном компьютере с относительно небольшим объемом информации, нередко применяют имитацию этих самих серверов – особые библиотеки. Одна из наиболее распространенных – это SQLite. Именно с SQLite мы и познакомимся в данном материале.
Итак, сначала качаем и подключаем к проекту библиотеку System.Data.SQLite.dll. Используем директивы using
using System.Data.SQLite; using System.IO; using System.Data;
И начинаем работать. Необходимые нам переменные:
private String dbFileName; private SQLiteConnection m_dbConn; private SQLiteCommand m_sqlCmd;
После загрузки формы (событие Load) инициализируем их:
m_dbConn = new SQLiteConnection(); m_sqlCmd = new SQLiteCommand(); Кидаем на форму textbox и кнопку (элемент button) и на событие клика по ней вставляем следующий код: dbFileName = textBox1.Text+».sqlite»; if (!File.Exists(dbFileName)) SQLiteConnection.CreateFile(dbFileName);
Чтобы появилась вкладка с кодом, необходимо в визуальном редакторе сделать двойной щелчок по самой кнопке (это если то не знает).
В первой строке мы получаем информацию из текстового поля (название каталога), а во второй, если нет файла с таким названием – создаем в текущем каталоге новую одноимённую базу данных с расширением sqlite.
Теперь научимся создавать таблицы в нашем файле базе данных. Для этого кидаем на форму еще одну кнопку и пишем её обработчик:
try < m_dbConn = new SQLiteConnection(«Data Source=» + dbFileName + «;Version=3;»); m_dbConn.Open(); m_sqlCmd.Connection = m_dbConn; m_sqlCmd.CommandText = «CREATE TABLE IF NOT EXISTS Catalog (id INTEGER PRIMARY KEY AUTOINCREMENT, product TEXT, characteristics TEXT)»; m_sqlCmd.ExecuteNonQuery(); MessageBox.Show(«Таблица успешно создана!»); >catch (SQLiteException ex)
Запустив программу и попробовав выполнить данный код, мы столкнемся с ошибкой:
Не удается загрузить DLL «SQLite.Interop.dll»: Не найден указанный модуль. (Исключение из HRESULT: 0x8007007E)
Решается просто. Добавим файл SQLite.Interop.dll в папку программы. И снова пробуем запустить. Если получилось, то теперь у нас есть таблица в базе данных sqllite с тремя полями: ид товара, его название, а также характеристики. Структура максимально проста, создана специально для примера, для обучения.
Далее научимся добавлять записи в нашу таблицу. Это также несложно. Добавим на форму еще пару текстбоксов и кнопку. Вот и обработчик данной кнопки:
if (m_dbConn.State != ConnectionState.Open) < dbFileName = «catalog1.sqlite»; m_dbConn = new SQLiteConnection(«Data Source=» + dbFileName + «;Version=3;»); m_dbConn.Open(); m_sqlCmd.Connection = m_dbConn; >try < m_sqlCmd.CommandText = «INSERT INTO Catalog (‘product’, ‘characteristics’) values (‘» + textBox2.Text + «‘ , ‘» + textBox3.Text + «‘)»; m_sqlCmd.ExecuteNonQuery(); >catch (SQLiteException ex) < MessageBox.Show(«Error: » + ex.Message); >m_dbConn.Close();
Дальше нам надо научиться выводить сделанные записи (товары) – а то мало ли, вдруг на самом деле там ничего и не записывается? Для этого кидаем на форму датагрид с именем dgvViewer, создаем в нем три столбца (columns) с соответствующими названиями (id, product, characteristics) и еще одну кнопку с кодом:
DataTable dTable = new DataTable(); String sqlQuery; if (m_dbConn.State != ConnectionState.Open) < dbFileName = «catalog1.sqlite»; m_dbConn = new SQLiteConnection(«Data Source=» + dbFileName + «;Version=3;»); m_dbConn.Open(); >try < sqlQuery = «SELECT * FROM Catalog»; SQLiteDataAdapter adapter = new SQLiteDataAdapter(sqlQuery, m_dbConn); adapter.Fill(dTable); if (dTable.Rows.Count >0) < dgvViewer.Rows.Clear(); for (int i = 0; i < dTable.Rows.Count; i++) dgvViewer.Rows.Add(dTable.Rows[i].ItemArray); >else MessageBox.Show(«Database is empty»); > catch (SQLiteException ex) < MessageBox.Show(«Error: » + ex.Message); >m_dbConn.Close();
Несмотря на неказистый внешний вид, наше приложение уже представляет собой рабочий вариант программы, которую можно использовать, к примеру, как сборник записей. В следующих статьях мы уже более подробно будем разбирать данную тему.
Автор этого материала — я — Пахолков Юрий. Я оказываю услуги по написанию программ на языках Java, C++, C# (а также консультирую по ним) и созданию сайтов. Работаю с сайтами на CMS OpenCart, WordPress, ModX и самописными. Кроме этого, работаю напрямую с JavaScript, PHP, CSS, HTML — то есть могу доработать ваш сайт или помочь с веб-программированием. Пишите сюда.
статьи IT, Visual Studio, sqlite, си шарп, базы данных
Бесплатный https и
домен RU в подарок
Источник: upread.ru
Проект TypeScript в Visual Studio Code, часть 2
Продолжаем с того места, где остановились. Несколько дней я болел гриппом, поэтому, когда я запустил свой проект, который подключается к Chrome через порт 9222 и должен отлаживаться, и ничего не работало, мне потребовалось немного времени, чтобы понять, что мне пришлось загрузить локальный индекс. html, чтобы было что отлаживать. Краснеть. Потом мы вернулись к нормальной жизни. (Я разработчик C/Objective-C/Swift/C#, так что не совсем эксперт по HTML/CSS, хотя, кто знает, я могу двигаться в этом направлении, если это так же весело, как TypeScript.)
Кстати, почему он называется TypeScript? Потому что ты можешь напечатать это? Нееет, потому что он вводит концепцию типизированных параметров и переменных в чистый JavaScript. Я очень уважаю JavaScript, и вы можете написать это f-e-a-r из-за количества ошибок, которые можно внести без строгой типизации, и я сейчас гоняюсь за ним, потому что TypeScript, кажется, обещает решить эту проблему.
Я восхищаюсь его функциональными возможностями почти так же сильно, как и сожалею о том, что им пришлось использовать слово «Java» в названии языка, когда это не Java. Также было трудно прийти к языку, в котором самая известная книга называлась бы «Хорошие части», потому что в ней было так много плохих частей. После пары лет копания в хамелеоноподобном языке Swift меня это меньше беспокоит.
Так или иначе. Теперь изменим launch.json, чтобы объединить все это в один шаг.
Бок о бок, это две конфигурации запуска, которые я настроил. Один раз просто подключается к запущенному экземпляру chrome и предполагает, что index.html уже загружен, а затем запускает сообщение на консоль в событии loadWindow из браузеров.
Второй запускает браузер и загружает саму веб-страницу, поэтому вы избавляетесь от этого шага. Довольно изящно.
Теперь давайте взглянем на Grunt (может быть, я уже играл с Gulp, это своего рода потомок, который хранит вещи в памяти, тогда как Grunt, по-видимому, представляет собой систему задач типа ремня и подтяжек, которая оставляет много бумаги). тропы, немного медленнее, но несколько, как я предполагаю, легче отлаживать.)
Идея с Grunt, особенно удобная, если вы работаете из простого текстового редактора и команды tsc из командной строки, заключается в том, что он следит за вашими файлами и выполняет компиляцию, сборку и тестирование по требованию.
Прежде всего, обратите внимание, что Grunt нельзя установить глобально — его необходимо установить для вашего проекта, а это означает создание файла пакетов .json в корневом каталоге проекта. Помните, что вы создаете packages.json с помощью
npm init
а затем следуйте инструкциям, для которых вы, вероятно, можете просто нажать «ввод» и принять значения по умолчанию. Что-то вроде github init.
Тогда у меня есть
< «name»: «hello», «version»: «1.0.0», «description»: «», «main»: «hello.js», «scripts»: < «test»: «echo «Error: no test specified» exit 1″ >, «author»: «», «license»: «ISC» >
и теперь я могу установить Grunt. Во-первых, интерфейс командной строки,
npm install -g grunt-cli
поэтому я могу ворчать из своей командной строки.
Затем установите файлы grunt в каталог моего проекта.
npm install grunt —save-dev
который установил около 90 файлов в подкаталог node_modules в моем основном каталоге проекта. Кстати, это — save-dev, который устанавливает локальную версию Grunt. Если вы сделаете это таким образом, то различные проекты смогут использовать свои собственные версии Grunt, и вам не придется обновлять все ваши проекты каждый раз, когда Grunt делает большой скачок вперед.
тогда вам тоже нужно
npm install grunt-exec —save-dev npm install grunt-contrib-watch —save-dev
Следующим шагом является создание файла GruntFile.js, файла JavaScript, который будет указывать параметры для Grunt, когда он работает и просматривает каталог вашего проекта: какой набор файлов он просматривает и что с ними делать (в данном случае, запустите tsc и скомпилируйте их, например, превратите TypeScript в JavaScript).
Это сработало хорошо, я просто добавил пробел в строку…
и Grunt watcher уловил (довольно тривиальное) изменение и перекомпилировал файлы при сохранении файла. Хороший. Конечно, есть целые книги по хрюканью, и это только царапает поверхность.
Завершаем инструменты и переходим к языковой специфике. Для тех, кто следит, если я не кричу в темноте, а даже если и кричу, то это продолжение MASTERING TYPESCRIPT SECOND EDITION Натана Розентальса. Кажется, это довольно солидная книга, соответствующая состоянию технологий и содержанию книги, а также солидный полезный материал от автора. Аплодисменты Натану.
Источник: digitrain.ru