本文整理汇总了C#中IApplicationBuilder.UseHangfireServer方法的典型用法代码示例。如果您正苦于以下问题:C# IApplicationBuilder.UseHangfireServer方法的具体用法?C# IApplicationBuilder.UseHangfireServer怎么用?C# IApplicationBuilder.UseHangfireServer使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IApplicationBuilder
的用法示例。
在下文中一共展示了IApplicationBuilder.UseHangfireServer方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ConfigureHangfire
private void ConfigureHangfire(IApplicationBuilder app)
{
const string queueName = @".\private$\hangfire_health";
if (!MessageQueue.Exists(queueName))
{
var queue = MessageQueue.Create(queueName, true);
queue.SetPermissions("Administrators", MessageQueueAccessRights.FullControl);
}
var options = new SqlServerStorageOptions
{
PrepareSchemaIfNecessary = true
};
GlobalConfiguration.Configuration
.UseSqlServerStorage("Server=.\\sqlexpress;Database=HangfireHealth;Trusted_Connection=True;MultipleActiveResultSets=true", options)
.UseMsmqQueues(queueName)
.UseDIActivator(app.ApplicationServices)
.UseDashboardMetric(DashboardMetrics.ScheduledCount)
.UseDashboardMetric(DashboardMetrics.RetriesCount)
.UseDashboardMetric(DashboardMetrics.ProcessingCount)
.UseDashboardMetric(DashboardMetrics.SucceededCount)
.UseDashboardMetric(DashboardMetrics.FailedCount)
.UseDashboardMetric(DashboardMetrics.AwaitingCount);
app.UseHangfireServer();
app.UseHangfireDashboard("/hangfire", new DashboardOptions
{
AuthorizationFilters = new[] { new HangfireAuthorizationFilter() }
});
}
示例2: Configure
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{
loggerFactory.AddConsole(Configuration.GetSection("Logging"));
loggerFactory.AddDebug();
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
app.UseBrowserLink();
}
else
{
app.UseExceptionHandler("/Home/Error");
}
app.UseStaticFiles();
// Add Hangfire Server and Dashboard support
app.UseHangfireServer();
app.UseHangfireDashboard();
// Run once
BackgroundJob.Enqueue(() => System.Console.WriteLine("Background Job: Hello, world!"));
BackgroundJob.Enqueue(() => Test());
// Run every minute
RecurringJob.AddOrUpdate(() => Test(), Cron.Minutely);
app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller=Home}/{action=Index}/{id?}");
});
}
示例3: Configure
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
public void Configure(
IApplicationBuilder app,
IHostingEnvironment env,
ILoggerFactory loggerFactory,
ImperaContext dbContext,
DbSeed dbSeed)
{
loggerFactory.AddConsole(Configuration.GetSection("Logging"));
loggerFactory.AddDebug();
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
app.UseDatabaseErrorPage();
}
// Enable Cors
app.UseCors(b => b.AllowAnyOrigin().AllowAnyMethod().AllowAnyHeader().DisallowCredentials().Build());
// Auth
app.UseIdentity();
//app.UseFacebookAuthentication(new FacebookOptions
//{
// ClientId = Configuration["Authentication:Facebook:ClientId"],
// AppId = Configuration["Authentication:Facebook:AppId"],
// AppSecret = Configuration["Authentication:Facebook:AppSecret"]
//});
app.UseOAuthValidation(options => {
options.Events = new AspNet.Security.OAuth.Validation.OAuthValidationEvents
{
// Note: for SignalR connections, the default Authorization header does not work,
// because the WebSockets JS API doesn't allow setting custom parameters.
// To work around this limitation, the access token is retrieved from the query string.
OnRetrieveToken = context => {
context.Token = context.Request.Query["bearer_token"];
return Task.FromResult(0);
}
};
});
app.UseOpenIddict();
app.UseMvc();
app.UseWebSockets();
app.UseSignalR();
app.UseSwagger();
app.UseSwaggerUi();
// Initialize database
if (env.IsDevelopment())
{
// Always recreate in development
//dbContext.Database.EnsureDeleted();
dbContext.Database.EnsureCreated();
}
else
{
dbContext.Database.Migrate();
}
dbSeed.Seed(dbContext).Wait();
AutoMapperConfig.Configure();
// Hangfire
app.UseHangfireServer(new BackgroundJobServerOptions
{
Queues = new[] { JobQueues.Critical, JobQueues.Normal },
});
app.UseHangfireDashboard();
Hangfire.Common.JobHelper.SetSerializerSettings(new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.All });
// Configure Impera background jobs
JobConfig.Configure();
}
示例4: Configure
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
public void Configure(IApplicationBuilder app)
{
app.UseStaticFiles();
app.ApplicationServices.GetRequiredService<OkMidnightDbContext>().EnsureSeedData();
app.UseBrowserLink();
app.UseDeveloperExceptionPage();
app.UseDatabaseErrorPage();
app.UseIdentity();
app.UseMicrosoftAccountAuthentication(new MicrosoftAccountOptions
{
ClientId = _configuration["Authentication:Microsoft:ClientId"],
ClientSecret = _configuration["Authentication:Microsoft:ClientSecret"]
});
app.UseMvc(routes => {
routes.MapRoute("home", "{action=Index}/{id?}/{name?}", new { controller = "Home" });
routes.MapRoute("admin", "admin/{controller=Categories}/{action=Index}/{id?}");
routes.MapRoute("account", "account/{action=Index}", new { controller = "Account" });
routes.MapRoute("picker", "picker/{name}", new { controller = "Picker", action = "Index" });
});
app.UseHangfireServer();
app.UseHangfireDashboard("/hangfire", new DashboardOptions { Authorization = new[] { new LoggedUserAuthorizationFilter() } });
}
示例5: Configure
/// <summary>
/// Called by the runtime to configure the HTTP request pipeline.
/// </summary>
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
app.UseTelemetry(_loggerFactory, Configuration, logEvent => true);
app.UseExceptionHandler("/Error");
app.UseHangfireServer(GetBackgroundJobServerOptions());
app.UseMvc();
_container
.Resolve<IDockerHostFactory>()
.PullContainerImagesAsync()
.Wait();
}
示例6: Configure
//.........这里部分代码省略.........
// Add Error handling middleware which catches all application specific errors and
// sends the request to the following path or controller action.
app.UseExceptionHandler("/Home/Error");
}
// Track data about exceptions from the application. Should be configured after all error handling middleware in the request pipeline.
app.UseApplicationInsightsExceptionTelemetry();
// Add static files to the request pipeline.
app.UseStaticFiles();
// Add cookie-based authentication to the request pipeline.
app.UseIdentity();
// Add token-based protection to the request inject pipeline
app.UseTokenProtection(new TokenProtectedResourceOptions
{
Path = "/api/request",
PolicyName = "api-request-injest"
});
// Add authentication middleware to the request pipeline. You can configure options such as Id and Secret in the ConfigureServices method.
// For more information see http://go.microsoft.com/fwlink/?LinkID=532715
if (Configuration["Authentication:Facebook:AppId"] != null)
{
var options = new FacebookOptions
{
AppId = Configuration["Authentication:Facebook:AppId"],
AppSecret = Configuration["Authentication:Facebook:AppSecret"],
BackchannelHttpHandler = new FacebookBackChannelHandler(),
UserInformationEndpoint = "https://graph.facebook.com/v2.5/me?fields=id,name,email,first_name,last_name"
};
options.Scope.Add("email");
app.UseFacebookAuthentication(options);
}
if (Configuration["Authentication:MicrosoftAccount:ClientId"] != null)
{
var options = new MicrosoftAccountOptions
{
ClientId = Configuration["Authentication:MicrosoftAccount:ClientId"],
ClientSecret = Configuration["Authentication:MicrosoftAccount:ClientSecret"]
};
app.UseMicrosoftAccountAuthentication(options);
}
//http://www.bigbrainintelligence.com/Post/get-users-email-address-from-twitter-oauth-ap
if (Configuration["Authentication:Twitter:ConsumerKey"] != null)
{
var options = new TwitterOptions
{
ConsumerKey = Configuration["Authentication:Twitter:ConsumerKey"],
ConsumerSecret = Configuration["Authentication:Twitter:ConsumerSecret"]
};
app.UseTwitterAuthentication(options);
}
if (Configuration["Authentication:Google:ClientId"] != null)
{
var options = new GoogleOptions
{
ClientId = Configuration["Authentication:Google:ClientId"],
ClientSecret = Configuration["Authentication:Google:ClientSecret"]
};
app.UseGoogleAuthentication(options);
}
//call Migrate here to force the creation of the AllReady database so Hangfire can create its schema under it
if (!env.IsProduction())
{
context.Database.Migrate();
}
//Hangfire
app.UseHangfireDashboard("/hangfire", new DashboardOptions { Authorization = new [] { new HangireDashboardAuthorizationFilter() }});
app.UseHangfireServer();
// Add MVC to the request pipeline.
app.UseMvc(routes =>
{
routes.MapRoute(name: "areaRoute", template: "{area:exists}/{controller}/{action=Index}/{id?}");
routes.MapRoute(name: "default", template: "{controller=Home}/{action=Index}/{id?}");
});
// Add sample data and test admin accounts if specified in Config.Json.
// for production applications, this should either be set to false or deleted.
if (Configuration["SampleData:InsertSampleData"] == "true")
{
sampleData.InsertTestData();
}
if (Configuration["SampleData:InsertTestUsers"] == "true")
{
await sampleData.CreateAdminUser();
}
}
示例7: Configure
// Configure is called after ConfigureServices is called.
public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{
loggerFactory.MinimumLevel = LogLevel.Information;
loggerFactory.AddConsole();
loggerFactory.AddDebug();
// Configure the HTTP request pipeline.
// Add the following to the request pipeline only in development environment.
if (env.IsDevelopment())
{
app.UseBrowserLink();
app.UseDeveloperExceptionPage();
app.UseDatabaseErrorPage(options => options.EnableAll());
}
else
{
// Add Error handling middleware which catches all application specific errors and
// sends the request to the following path or controller action.
app.UseExceptionHandler("/Home/Error");
}
// Add the platform handler to the request pipeline.
app.UseIISPlatformHandler();
// Add static files to the request pipeline.
app.UseStaticFiles();
// Add cookie-based authentication to the request pipeline.
app.UseIdentity();
// Add and configure the options for authentication middleware to the request pipeline.
// You can add options for middleware as shown below.
// For more information see http://go.microsoft.com/fwlink/?LinkID=532715
//app.UseFacebookAuthentication(options =>
//{
// options.AppId = Configuration["Authentication:Facebook:AppId"];
// options.AppSecret = Configuration["Authentication:Facebook:AppSecret"];
//});
//app.UseGoogleAuthentication(options =>
//{
// options.ClientId = Configuration["Authentication:Google:ClientId"];
// options.ClientSecret = Configuration["Authentication:Google:ClientSecret"];
//});
//app.UseMicrosoftAccountAuthentication(options =>
//{
// options.ClientId = Configuration["Authentication:MicrosoftAccount:ClientId"];
// options.ClientSecret = Configuration["Authentication:MicrosoftAccount:ClientSecret"];
//});
//app.UseTwitterAuthentication(options =>
//{
// options.ConsumerKey = Configuration["Authentication:Twitter:ConsumerKey"];
// options.ConsumerSecret = Configuration["Authentication:Twitter:ConsumerSecret"];
//});
// Add MVC to the request pipeline.
app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller=Home}/{action=Index}/{id?}");
// Uncomment the following line to add a route for porting Web API 2 controllers.
// routes.MapWebApiRoute("DefaultApi", "api/{controller}/{id?}");
});
//HangFire
GlobalConfiguration.Configuration.UseSqlServerStorage(Configuration["Data:DefaultConnection:ConnectionString"]);
app.UseHangfireDashboard("/PowerShell/Jobs");
app.UseHangfireServer();
}