小编ada*_*039的帖子

在Azure Service Fabric中查找有状态服务的分区键

我已按照此处的步骤在Azure中的资源组上创建反向代理.https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-reverseproxy

我相信反向代理正在工作,因为我曾经收到404错误,现在我收到400错误请求.

错误代码为FABRIC_E_INVALID_PARTITION_KEY

这是有道理的,因为在文档中,它说对于不使用单例分区的服务,您必须指定分区键和分区类型,如下所示:

http://mycluster.eastus.cloudapp.azure.com:19008/MyApp/MyService?PartitionKey=3&PartitionKind=Int64Range
Run Code Online (Sandbox Code Playgroud)

我的问题是,我如何获得该分区键?文档明确声明它不是资源管理器中生成的GUID,因此我无法使用它.我正在从结构外部的外部应用程序联系此有状态服务.

azure azure-service-fabric

7
推荐指数
2
解决办法
4228
查看次数

在启用UseDeveloperExceptionPage的情况下获取错误消息的空白页

当我输入无效的URL或者在我的应用程序中抛出异常时,我得到空白页面.我启用了UseDeveloperExceptionPage(),并且我已确认我的应用程序环境处于开发模式,并且该方法正在触发.该应用程序工作正常,但没有在浏览器中显示错误消息令人沮丧.

我的Startup.cs配置方法:

public void Configure(IApplicationBuilder app, IHostingEnvironment env)
        {
            app.UseIISPlatformHandler();
            app.UseStaticFiles();
            app.UseIdentity();
            app.UseMvc(m =>
            m.MapRoute(
                    name: "default",
                    template: "{controller}/{action}/{id?}",
                    defaults: new { controller = "Home", action = "Index" }
                ));

            if(env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }
            else
            {
                app.UseExceptionHandler("/Home/Error");
            }

            CreateSampleData(app.ApplicationServices).Wait();
        }
Run Code Online (Sandbox Code Playgroud)

我的project.json

{
  "version": "1.0.0-*",

  "dependencies": {
    "Microsoft.AspNet.IISPlatformHandler": "1.0.0-rc1-final",
    "Microsoft.AspNet.Server.Kestrel": "1.0.0-rc1-final",
    "Microsoft.AspNet.Mvc": "6.0.0-rc1-final",
    "EntityFramework.MicrosoftSqlServer": "7.0.0-rc1-final",
    "EntityFramework.Commands": "7.0.0-rc1-final",
    "Microsoft.Framework.ConfigurationModel.Json": "1.0.0-beta4",
    "Microsoft.AspNet.Diagnostics": "1.0.0-rc1-final",
    "Microsoft.AspNet.StaticFiles": "1.0.0-rc1-final",
    "Microsoft.AspNet.Identity.EntityFramework": "3.0.0-rc1-final",
    "Microsoft.AspNet.Authentication.Cookies": "1.0.0-rc1-final"
  },

  "commands": {
    "web": "Microsoft.AspNet.Server.Kestrel",
    "ef": "EntityFramework.Commands"
  },

  "frameworks": {
    "dnx451": { },
    "dnxcore50": …
Run Code Online (Sandbox Code Playgroud)

asp.net-core-mvc asp.net-core

6
推荐指数
1
解决办法
6047
查看次数

Chart.js 中的气泡被切断

我遇到一个问题,图表中的最后一个气泡被切断。我需要一种扩展图表的方法,以便显示整个圆。我已经尝试了一切,从添加额外的值到最后,到调整填充。似乎什么都不起作用。不幸的是,关于气泡图的 Chart JS 文档也严重缺乏。

var randomScalingFactor = function() {
  return (Math.random() > 0.5 ? 1.0 : -1.0) * Math.round(Math.random() * 100);
};
var randomColorFactor = function() {
  return Math.round(Math.random() * 255);
};
var randomColor = function() {
  return 'rgba(' + randomColorFactor() + ',' + randomColorFactor() + ',' + randomColorFactor() + ',.7)';
};

var bubbleChartData = {
  animation: {
    duration: 10000
  },
  datasets: [{
    label: "My First dataset",
    backgroundColor: randomColor(),
    data: [
      {
        x: 10,
        y: 0,
        r: Math.abs(randomScalingFactor()) / 5, …
Run Code Online (Sandbox Code Playgroud)

chart.js

5
推荐指数
1
解决办法
2260
查看次数

Visual Studio 2015异步变量未在调试器中显示

我有一个.NET Core ASP.NET MVC 6应用程序,我确信它是Visual Studio中的一个错误.如果我在await语句后面放置一个断点,那么该对象不会显示在Locals中,并且我无法鼠标移动来检查.但是,如果我使用变量,它仍然可以正常工作,并且它确实填充.

像这样简单:

public async Task<IActionResult> Index()
    {
        var location = await _listingLocationService.GetLocationByAddress("123 Fake Street");
        return Content(location.Latitude.ToString() + " " +location.Longitude.ToString());
    }
Run Code Online (Sandbox Code Playgroud)

如果我将断点放在return语句上,我就无法检查位置.它不会出现在任何地方.我甚至可以删除await并在结尾放置一个.Result,但仍然没有显示.但是当我继续时,视图会显示location.latitude,并且location.longitude会很好.所以我知道它正在填充.

为了完整起见,我还将包含GetLocationByAddress函数,它也会做同样的事情,如果我在等待之后的任何地方放置一个断点,我就无法检查变量(甚至是反序列化的列表!).

public async Task<Geolocation> GetLocationByAddress(string address)
        {
            using (var client = new HttpClient())
            {
                client.BaseAddress = new Uri("https://maps.googleapis.com/maps/api/geocode/json");
                var request = new HttpRequestMessage(HttpMethod.Get, "?address=" + WebUtility.UrlEncode(address) + "&key=...");
                var response = await client.SendAsync(request);
                var contents = await response.Content.ReadAsStringAsync();
                var locationResult = JsonConvert.DeserializeObject<GoogleLocationResult>(contents);
                if (locationResult.status == "OK")
                {
                    var result = locationResult.results.First().geometry.location;
                    return new …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc visual-studio-2015 asp.net-core

4
推荐指数
1
解决办法
803
查看次数

是否可以将NServiceBus与Azure Service Fabric一起使用?

我认为,Azure Service Fabric将维护微服务集群,NServiceBus将促进服务之间的通信.我在网上看到没有关于这个组合的文档,所以我很好奇我是否从根本上误解了这两个方面的工作原理.

architecture nservicebus azure azure-service-fabric

4
推荐指数
1
解决办法
1125
查看次数

等效于组件功能的路由防护器

我想知道是否有与角组件功能(特别是单击事件)等效的路由防护。

我们已经设置了一个路由保护程序,可以在未登录时打开登录页面。这很好用。问题是,我们有一个不需要身份验证即可查看的组件,但是该组件中的某些功能确实需要身份验证。例如,新闻列表,但上/下按钮需要进行身份验证才能使用。

上/下按钮只是触发组件功能的单击事件。我们可以采用在自定义路由保护程序中使用的逻辑,并将其添加到这些函数中,但这会导致大量重复代码。

我想知道Angular是否内置可以解决这个问题的东西。我在考虑类似于ASP.NET MVC的[Authorize]属性,您可以将其放在要进行身份验证的操作的顶部。据我所知,路由守卫仅适用于路由,而不适用于单击事件。

angular angular4-router

2
推荐指数
1
解决办法
1131
查看次数