public void Validate()
{
if (string.IsNullOrWhiteSpace(ConnectionString))
{
throw new ValidationArgException("Connection string is required for deployment.");
}
if (UseWindowsLogin && !HasLoginName)
{
throw new ValidationArgException("Login name is required when UseWindowsLogin is specified.");
}
if (HasLoginPassword && !HasLoginName)
{
throw new ValidationArgException("Login name is required when LoginPassword is specified.");
}
if (HasLoginName && !UseWindowsLogin && !HasLoginPassword)
{
throw new ValidationArgException("LoginPassword is required when creating a login and not using Windows login.");
}
if (UseWindowsLogin && HasLoginPassword)
{
throw new ValidationArgException("LoginPassword cannot be specified when using Windows login.");
}
if (HasDatabaseUserName && !HasLoginName)
{
throw new ValidationArgException("LoginName is required when creating database user.");
}
}
}