本文整理汇总了C#中Model.IsValid方法的典型用法代码示例。如果您正苦于以下问题:C# Model.IsValid方法的具体用法?C# Model.IsValid怎么用?C# Model.IsValid使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Model
的用法示例。
在下文中一共展示了Model.IsValid方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Modify
/// <summary>
/// Modify Room
/// </summary>
/// <param name="room">Room</param>
public void Modify(Model.Room.Room room)
{
if (room == null || room.IsValid() == false)
{
throw new ValidationException(ErrorFactory.CreateAndLogError(Errors.SRVEX30068, "RoomManager.Modify", arguments: new object[] { this }));
}
Model.Room.Room existingRoom = roomDao.GetByName(room.Name, room.BusinessId);
if (existingRoom != null && existingRoom.Id != room.Id)
{
throw new ValidationException(ErrorFactory.CreateAndLogError(Errors.SRVEX30085, "RoomManager.Modify",
additionalDescriptionParameters: (new object[] { room.BusinessId })));
}
var bookings = bookingManager.GetByRoom(room.Id).AsQueryable().Where(b => b.StartDate >= DateTime.UtcNow || b.EndDate >= DateTime.UtcNow);
// If any were found throw validation exception if trying to change status
if (bookings.Any() && room.RoomStatusCode != RoomStatusCodes.ACTIVE)
{
throw new ValidationException(ErrorFactory.CreateAndLogError(Errors.SRVEX30097, "RoomManager.Modify", arguments: new object[] { this }));
}
using (var businessTransaction = new BusinessTransaction())
{
roomDao.Modify(room);
businessTransaction.Commit();
}
eventTrackingManager.CreateBusinessEventAsync(room.BusinessId,
BusinessEventTypesEnum.RoomModified,
room.Id.ToString(CultureInfo.InvariantCulture));
}
示例2: Create
/// <summary>
/// Create User
/// </summary>
/// <remarks>
/// The user to create will have a default password associated in the initial stage.
/// Things like password and security question and security password should be created at
/// a later stage during the activation process
/// </remarks>
/// <param name="user">User to create</param>
/// <returns>Guid of the created user</returns>
public Guid Create(Model.User.User user)
{
var newUserId = Guid.Empty;
if (!user.IsValid())
{
throw new ValidationException(ErrorFactory.CreateAndLogError(Errors.SRVEX30052, "UserManager.create"));
}
MembershipCreateStatus createStatus;
MembershipUser newUser = Membership.CreateUser(user.UserName, DefaultPassword, user.UserName,
DefaultPasswordQuestion, DefaultPasswordAnswer, true,
out createStatus);
if (createStatus != MembershipCreateStatus.Success)
{
throw new ValidationException(ErrorFactory.CreateAndLogError(Errors.SRVEX30053, "Membership.CreateUser"));
}
if (newUser != null && newUser.ProviderUserKey != null)
{
var newUserIdentifier = (Guid)newUser.ProviderUserKey;
userExtensionDao.Create(new UserExtension
{
UserId = newUserIdentifier,
FirstName = user.Extension.FirstName,
LastName = user.Extension.LastName,
CultureCode = user.Extension.CultureCode
});
RecordUserEvent(user.UserName, UserEventTypesEnum.UserCreated);
newUserId = newUserIdentifier;
}
return newUserId;
}
示例3: Modify
/// <summary>
/// Modify User
/// </summary>
/// <param name="user">User</param>
public void Modify(Model.User.User user)
{
if (!user.IsValid())
{
throw new ValidationException(ErrorFactory.CreateAndLogError(Errors.SRVEX30051, "UserManager.Modify"));
}
using (var btx = new BusinessTransaction())
{
userDao.Modify(user);
// Update UserExtension
userExtensionDao.Modify(user.Extension);
//make sure to update the membership with the new user name used
var membershipUser = Membership.GetUser(user.Id);
if (membershipUser != null)
{
membershipUser.Email = user.UserName;
Membership.UpdateUser(membershipUser);
}
RecordUserEvent(user.UserName, UserEventTypesEnum.UserModified);
btx.Commit();
}
}
示例4: CheckOnlineAvailability
/// <summary>
/// Search availability using online business logic
/// </summary>
/// <param name="onlineAvailabilitySearchCriteria">search criteria to use</param>
/// <returns>Available rooms found</returns>
public AvailabilitySearchResult CheckOnlineAvailability(Model.Room.Online.AvailabilitySearchCriteria onlineAvailabilitySearchCriteria)
{
Logger.LogInfo("==========CheckOnlineAvailability Called==========");
Logger.LogDebugAsXml(onlineAvailabilitySearchCriteria);
AvailabilitySearchResult searchResults = null;
var businessIds = new List<long>();
var currency = onlineAvailabilitySearchCriteria.RequestedCurrency;
foreach (var shortName in onlineAvailabilitySearchCriteria.BusinessShortNames)
{
// will need to send the list of businesses in future
CachedBusinessDigest currentBusiness = Cache.Cache.BusinessByShortName.TryGetValue(shortName);
if (currentBusiness != null)
{
businessIds.Add(currentBusiness.Id);
if (currency == null || String.IsNullOrEmpty(currency))
{
currency = currentBusiness.WorkingCurrencyCode;
}
}
}
if (businessIds.Any())
{
// Check that is not in the past
onlineAvailabilitySearchCriteria.IsValid();
if (onlineAvailabilitySearchCriteria.RoomSearchCriteria == null ||
onlineAvailabilitySearchCriteria.RoomSearchCriteria.Count == 0)
{
onlineAvailabilitySearchCriteria.RoomSearchCriteria = new List<Model.Room.Online.RoomRestrictions>
{
new Model.Room.Online.RoomRestrictions {NumberOfAdults = null, NumberOfChildren = null}
};
}
Model.Room.Online.RoomRestrictions firstRestriction = onlineAvailabilitySearchCriteria.RoomSearchCriteria[0];
Channel channel = channelDao.GetChannelByShortName(onlineAvailabilitySearchCriteria.ChannelShortName);
if (channel == null)
{
// Exception since this is online search source and channel id is required.
return GetNullBusinessAvailabilityResult(onlineAvailabilitySearchCriteria);
}
// Set up search criteria
AvailabilitySearchCriteria searchCriteria = new AvailabilitySearchCriteria
{
StartDate = onlineAvailabilitySearchCriteria.StartDate,
EndDate = onlineAvailabilitySearchCriteria.EndDate,
NumberOfAdults = firstRestriction.NumberOfAdults,
NumberOfChildren = firstRestriction.NumberOfChildren,
BusinessIds = businessIds,
ChannelId = channel.Id,
RequestedCurrency = currency
};
// Do search here
searchResults = CheckAvailability(searchCriteria);
}
else
{
// No businesses found so return null result for it
searchResults = GetNullBusinessAvailabilityResult(onlineAvailabilitySearchCriteria);
}
var results = FilterSearchResultsForOnlineCheckAvailability(searchResults);
Logger.LogInfo("==========CheckOnlineAvailability Returns==========");
Logger.LogDebugAsXml(results);
return results;
}