本文整理汇总了C#中IProjectRepository.GetByIdCached方法的典型用法代码示例。如果您正苦于以下问题:C# IProjectRepository.GetByIdCached方法的具体用法?C# IProjectRepository.GetByIdCached怎么用?C# IProjectRepository.GetByIdCached使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IProjectRepository
的用法示例。
在下文中一共展示了IProjectRepository.GetByIdCached方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: FromError
public static WebHookError FromError(ErrorPipelineContext ctx, IProjectRepository projectRepository, IErrorStackRepository errorStackRepository, IOrganizationRepository organizationRepository) {
if (ctx == null || ctx.Error == null)
throw new ArgumentNullException("ctx");
if (projectRepository == null)
throw new ArgumentNullException("projectRepository");
if (errorStackRepository == null)
throw new ArgumentNullException("errorStackRepository");
if (organizationRepository == null)
throw new ArgumentNullException("organizationRepository");
var project = projectRepository.GetByIdCached(ctx.Error.ProjectId);
if (project == null)
throw new ArgumentException("ProjectId not found.");
var organization = organizationRepository.GetByIdCached(ctx.Error.OrganizationId);
if (organization == null)
throw new ArgumentException("OrganizationId not found.");
var errorStack = errorStackRepository.GetByIdCached(ctx.Error.ErrorStackId);
if (errorStack == null)
throw new ArgumentException("ErrorStackId not found.");
return new WebHookError {
Id = ctx.Error.Id,
OccurrenceDate = ctx.Error.OccurrenceDate,
Tags = ctx.Error.Tags,
MachineName = ctx.Error.EnvironmentInfo != null ? ctx.Error.EnvironmentInfo.MachineName : null,
RequestPath = ctx.Error.RequestInfo != null ? ctx.Error.RequestInfo.GetFullPath() : null,
IpAddress = ctx.Error.RequestInfo != null ? ctx.Error.RequestInfo.ClientIpAddress : ctx.Error.EnvironmentInfo != null ? ctx.Error.EnvironmentInfo.IpAddress : null,
Message = ctx.Error.Message,
Type = ctx.Error.Type,
Code = ctx.Error.Code,
TargetMethod = ctx.Error.TargetMethod != null ? ctx.Error.TargetMethod.FullName : null,
ProjectId = ctx.Error.ProjectId,
ProjectName = project.Name,
OrganizationId = ctx.Error.OrganizationId,
OrganizationName = organization.Name,
ErrorStackId = ctx.Error.ErrorStackId,
ErrorStackTitle = errorStack.Title,
ErrorStackDescription = errorStack.Description,
ErrorStackTags = errorStack.Tags,
TotalOccurrences = errorStack.TotalOccurrences,
FirstOccurrence = errorStack.FirstOccurrence,
LastOccurrence = errorStack.LastOccurrence,
DateFixed = errorStack.DateFixed,
IsRegression = ctx.IsRegression,
IsNew = ctx.IsNew
};
}
示例2: FromErrorStack
public static WebHookErrorStack FromErrorStack(ErrorStack stack, IProjectRepository projectRepository, IOrganizationRepository organizationRepository) {
if (stack == null)
throw new ArgumentNullException("stack");
if (projectRepository == null)
throw new ArgumentNullException("projectRepository");
if (organizationRepository == null)
throw new ArgumentNullException("organizationRepository");
var project = projectRepository.GetByIdCached(stack.ProjectId);
if (project == null)
throw new ArgumentException("ProjectId not found.");
var organization = organizationRepository.GetByIdCached(stack.OrganizationId);
if (organization == null)
throw new ArgumentException("OrganizationId not found.");
return new WebHookErrorStack {
Id = stack.Id,
Title = stack.Title,
Description = stack.Description,
Tags = stack.Tags,
RequestPath = stack.SignatureInfo.ContainsKey("Path") ? stack.SignatureInfo["Path"] : null,
Type = stack.SignatureInfo.ContainsKey("ExceptionType") ? stack.SignatureInfo["ExceptionType"] : null,
TargetMethod = stack.SignatureInfo.ContainsKey("Method") ? stack.SignatureInfo["Method"] : null,
ProjectId = stack.ProjectId,
ProjectName = project.Name,
OrganizationId = stack.OrganizationId,
OrganizationName = organization.Name,
TotalOccurrences = stack.TotalOccurrences,
FirstOccurrence = stack.FirstOccurrence,
LastOccurrence = stack.LastOccurrence,
DateFixed = stack.DateFixed,
IsRegression = stack.IsRegressed,
IsCritical = stack.OccurrencesAreCritical || stack.Tags != null && stack.Tags.Contains("Critical"),
FixedInVersion = stack.FixedInVersion
};
}
示例3: ToProjectLocalTime
public static ErrorStack ToProjectLocalTime(this ErrorStack errorStack, IProjectRepository repository) {
if (errorStack == null)
return null;
return errorStack.ToProjectLocalTime(repository.GetByIdCached(errorStack.ProjectId));
}