Если я правильно понимаю вопрос, то это сделает то, что вам нужно ...
static void AddCustomer()
{
Database db = new Database();
// declare the variable - populate its value later
bool alreadyExists;
do
{
Console.Write("Username: ");
var username = Console.ReadLine();
// check the value the user just entered
alreadyExists = db.Customer.Any(item => item.Username == username);
if (alreadyExists)
{
Console.WriteLine("Username already exists");
}
}
// if alreadyExists is true, repeat
while (alreadyexists);
// now that we have a username that is not in the list,
// add the new customer, using the username variable
var customer = new Customer
{
Username = username
};
BusinessManager.Instance.AddCustomer(customer);
BusinessManager.Instance.SaveChanges();
}
У вас, в основном, было это, но вы проверяли, что имя пользователя уже существует до того, как оно было введено, и вы также продолжали цикл do / while, пока пользователь не ввел дубликат.
После ввода нового имени пользователя, которого нет в списке, он создает новый объект Customer и использует класс BusinessManager
для его добавления и сохранения.
Вы могли смотреть на веб-материал Развертывания Vs2008. Внизу, это использует Задачу AspNetCompiler, таким образом, Вы могли взломать это Вас.*proj файл.
Решенный это путем определения свойства WebProjectOutputDir.
Это выглядит примерно так:
MSBuild.exe/t:Rebuild "MyTestProject.sln"/p:OutDir=c:\Project\bin\/p:WebProjectOutputDir=C:\Project\/p:Configuration=Debug
Вы также можете проверить эти сообщения в блоге:
- http://blog.m.jedynak.pl/2008/03/publishing-web-application-with-msbuild. html
- http://codingcockerel.co.uk/2008/05/18/how-to-publish-a-web-site-with-msbuild/