Я не вижу здесь ничего плохого (пример взят из mozilla getDate()
, ссылка , возможно, вам нужно проверить запись
var endDate = new Date('August 19, 1975 23:15:30');
console.log(endDate.getFullYear());
console.log(endDate.getMonth()+1); // 1 - 12 range
console.log(endDate.getDate());
Вы propably ищете Microsoft Source Code Control Provider (MSSCCI). Я знаю, Безопасный Источник, Сервер Основы Команды, Подверсия, Эволюция, (и некоторые следующие другие), продуктам управления исходным кодом реализовали этот интерфейс.
MSSCCI помог бы многим продуктам управления исходным кодом быть непосредственно доступными из Visual Studio, но не обязательно применимыми из кода.NET. К моему знанию нет никакой библиотеки.NET что доступ кратких обзоров ко всем продуктам управления исходным кодом, к даже больше чем одному.
Было бы интересно, если Вы могли бы перенести поставщика MSSCCI (вероятно, необходимо реализовать некоторые заголовки C++) как блок.NET.
Можно ли вызвать MSSCCI through DllImport/interop?
Редактирование, на самом деле, да...
[DllImport(@"C:\Program Files\Microsoft Visual Studio\Common\VSS\win32\SSSCC.DLL")]
Я рекомендовал бы не использовать MSSCCI в качестве уровня абстракции, в качестве того старого стиля, API SCC полностью смоделирован после принципала регистрации контроля, продвинутого VSS.
Большинство более новых Систем управления исходным кодом использует принцип Обновления/Слияния и/или позволяет комбинации Обновления/Слияния и блокирующий имитировать старое поведение.
Если Вы хотите использовать Подверсию от .NET, необходимо также посмотреть на новую библиотеку SharpSvn, как предоставляет Вам всем, питание Подверсии в .NET разрабатывает API. (Вы не должны думать об управлении памятью, массивах в апреле, указателях функции, и т.д. если Вам не нравится к).
В большинстве случаев это позволяет Вам использовать Подверсию с приблизительно 1/5-м из кода, в котором нуждается более старая привязка.
using(SvnClient client = new SvnClient())
{
client.Update(@"C:\My\WorkingCopy");
// Do something to your working copy
File.AppendAllText(@"C:\My\WorkingCopy", "\nFile Change\n");
SvnCommitArgs ca = new SvnCommitArgs();
ca.LogMessage = "Line added";
client.Commit(@"C:\My\WorkingCopy", ca);
}