小编use*_*686的帖子

在Asp.NET Core中设置web.config转换

我刚刚遇到了asp.net核心中web.config转换的问题.

有两个文件:base web.config和web.prod-zone-a.config.我的目标是在发布项目时在web.prod-zone-a.config中使用转换.我在.csproj中有以下"prod-zone-a"配置设置:

  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'prod-zone-a|AnyCPU' ">
    <IntermediateOutputPath>obj\Debug\netcoreapp1.1</IntermediateOutputPath>
    <DebugSymbols>true</DebugSymbols>
    <Optimize>false</Optimize>
    <DefineConstants>TRACE;DEBUG;NETCOREAPP1_1</DefineConstants>
    <Configuration>prod-zone-a</Configuration>
  </PropertyGroup>
Run Code Online (Sandbox Code Playgroud)

web.prod-zone-a.config看起来像:

<system.webServer>
    <handlers>
        <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" />
    </handlers>
    <aspNetCore>
        <environmentVariables xdt:Transform="Replace">
            <environmentVariable name="ASPNETCORE_ENVIRONMENT" value="prod-zone-a" />
        </environmentVariables>
    </aspNetCore>
</system.webServer>
Run Code Online (Sandbox Code Playgroud)

我尝试通过两个命令运行发布:

dotnet msbuild /t:Publish /p:OutputPath=c:\delivery /p:Configuration=prod-zone-a
Run Code Online (Sandbox Code Playgroud)

dotnet publish --configuration prod-zone-a --output c:\delivery
Run Code Online (Sandbox Code Playgroud)

但是没有转换适用于输出上的web.config - 只是默认值.我是否会错过配置或命令执行中的某些内容?

web.config-transform asp.net-core

7
推荐指数
3
解决办法
1万
查看次数

Postgres 函数:返回多个表

是否可以从 postgres 函数返回多个不同类型的结果集?

就像是:

CREATE OR REPLACE FUNCTION getUserById()
RETURNS setof ???
AS
$$
BEGIN

return query select id, name /* and other columns */ from users where id = 1;
return query select id, phone_number from user_phones where user_id = 1

END
$$
LANGUAGE plpgsql;
Run Code Online (Sandbox Code Playgroud)

我不想使用连接,因为用户可以使用多个电话。避免使用游标也会很棒。在 MS SQL 中是可能的,我想在 postgres 中做同样的事情。

postgresql plpgsql postgresql-9.3

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

在IIS + Kestrel上托管Asp.NET Core:随机响应缓慢

我正面临着IIS + Kestrel托管asp.net核心应用程序(web api)的问题.

有时响应延迟约为5秒.在这种情况下,Chrome显示"GET net :: ERR_CONNECTION_TIMED_OUT"(但Firefox等待响应)

它只发生在IIS上,如果我在Visual Studio Code中本地运行它可以正常工作(至少我没有发现任何"冻结").

服务器端的应用程序日志中有一些信息.对于成功的请求,它看起来像:

info: Microsoft.AspNetCore.Hosting.Internal.WebHost[1]
      Request starting HTTP/1.1 OPTIONS http://
info: Microsoft.AspNetCore.Hosting.Internal.WebHost[2]
      Request finished in 0.2813ms 204 
info: Microsoft.AspNetCore.Hosting.Internal.WebHost[1]
      Request starting HTTP/1.1 GET http://
info: Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerMiddleware[2]
      Successfully validated the token.
info: Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerMiddleware[3]
      HttpContext.User merged via AutomaticAuthentication from authenticationScheme: Bearer.
info: Microsoft.AspNetCore.Authorization.DefaultAuthorizationService[1]
      Authorization was successful for user: admin.
info: Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker[1]
      Executing action method <method-name> with arguments <args> - ModelState is Valid
info: Microsoft.AspNetCore.Mvc.Internal.ObjectResultExecutor[1]
      Executing ObjectResult, writing value Microsoft.AspNetCore.Mvc.ControllerContext.
info: Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker[2]
      Executed action …
Run Code Online (Sandbox Code Playgroud)

iis iis-10 kestrel-http-server asp.net-core

5
推荐指数
0
解决办法
2720
查看次数

Babel + WebPack:无法编译类属性

我正在开发简单的 js 应用程序,但遇到了与 babel 或/和 webpack 相关的问题 - 无法编译类(静态)属性,抛出错误:

ERROR in ./components/comp1.js
Module parse failed: Unexpected token (2:18)
You may need an appropriate loader to handle this file type.
| export class Comp1 {
|     static states = '123';
| }
Run Code Online (Sandbox Code Playgroud)

我用这个问题简化了文件,只有两个 - 入口点 index.js:

import { Comp1 } from './components/comp1'
export const components = {
    Comp1
};
Run Code Online (Sandbox Code Playgroud)

组件看起来像:

export class Comp1 {
    static states = {
        first: 1,
        second: 2
    };
}
Run Code Online (Sandbox Code Playgroud)

最令人困惑的时刻是它在我的 OSX 机器上成功编译,但无法在 Win 10 PC 上运行。我不知道操作系统会如何影响……我在 …

webpack babeljs babel-loader

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

角.限制:'A'指令.传递对象

有没有办法将配置对象传递给定义为属性指令的自定义指令?

我在Controller中有一个对象要发送到指令:

$scope.configObject = {
    count: 5,
    mode: 'fast',
    getData: myService.getData // function of external service that avaliable in controller
}
Run Code Online (Sandbox Code Playgroud)

在我的视图中我声明了指令:

<div class='list-class' my-list='configObject'></div>
Run Code Online (Sandbox Code Playgroud)

指令看起来像:

return {
    restrict: 'A',
    link: function(scope, elem, attrs) {
        var config = angular.fromJson(attrs.myList);
    }
}
Run Code Online (Sandbox Code Playgroud)

我试图使用angular.getJson获取配置对象 - 但它不适用于函数(它可能只获得计数和模式)..getJson()获取配置的方法不正确吗?

另外(我猜它甚至不可能) - 有没有办法让配置对象避免访问

attrs.myList
Run Code Online (Sandbox Code Playgroud)

直?我的意思是如果我改变指令的初始化

.directive('myList', function() { ... }) to
.directive('myCustomList', function() { ... })
Run Code Online (Sandbox Code Playgroud)

我应该改变访问权限

attrs.myCustomList
Run Code Online (Sandbox Code Playgroud)

因为视图看起来像

<div class='list-class' my-custom-list='configObject'></div>
Run Code Online (Sandbox Code Playgroud)

angularjs angularjs-directive

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

TypeScript:抑制属性在类型上不存在

我在使用 TypeScript 时遇到了以下问题:

有一个模块,它使用myApp.common.anotherFunc()来自“旧”js 代码的函数:

module myApp {
    export module helpers {

        export class baseHelper {
            doWork() {
                var m = myApp.common.anotherFunc();
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

结果打字稿编译器显示错误“类型上不存在属性”。如何在不重写我的旧功能的情况下克服这个问题myApp.common

如果重要的话,PS TS 版本是 2.0

typescript

3
推荐指数
1
解决办法
985
查看次数

Ramda 和 Typescript:添加缺少的类型

我在当前项目中使用 TypeScript 和 Ramdajs。而且我刚刚意识到遗漏了一些打字,即没有打字innerJoin功能(@types/ramda 版本是 0.25.36,我现在的最新版本)。我尝试在项目中的单独文件中添加自定义定义:

declare namespace R {
    interface Static {
        innerJoin(): any;
    }
}
Run Code Online (Sandbox Code Playgroud)

乃至:

declare let R: R.Static;

declare namespace R {
    interface Static {
        innerJoin(): any; /* here should be a specific signature */
    }
}

export = R;
export as namespace R;
Run Code Online (Sandbox Code Playgroud)

但没有成功 - 打字稿标记R.innerJoin(/*...*/)为未知:

“静态”类型上不存在属性“innerJoin”

有人知道如何正确实施吗?我找到了一个解决方法:const R_innerJoin = (R as any).innerJoin 但我怀疑应该有使用 '.d.ts' 的更优雅的解决方案......

如果这很重要,PS ramda 版本是 0.25.0。

更新

我正在以这种方式使用 Ramda:

import * as R from 'ramda';
const …
Run Code Online (Sandbox Code Playgroud)

typescript ramda.js

3
推荐指数
1
解决办法
697
查看次数

SQL Postgres双重分组

我的表有三列:place_id,date,value。每个日期的每个地方都有价值,例如

place_id:1,日期:'2014-01-01',值:1
place_id:2,日期:'2014-01-01',值:2
place_id:1,日期:'2014-02-02',值: 3
place_id:1,日期:'2014-02-03',值:4
place_id:2,日期:'2014-02-15',值:5

我的目标是为每个月找到所有地方的最大值。在以上数据的上下文中,它应该看起来像(不管日期如何显示-年和月两列或“ yyyy-MM-01”一列):

日期:'2014-01-01',sum_of_max:3
日期:'2014-02-01',sum_of_max:9

如我所知,我必须使用group by两次-首先要获得月份和位置的最大值,其次要总结第一步中获得的最大值。但是,什么方法可以让我达到最佳性能呢?

PS如果有问题,我正在使用PostgreSql 9.2

sql group-by postgresql-9.2

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

Asp.NET Core:对服务的跨源请求(预检)返回代码204而不是200

我有Asp.NET Core Web API应用程序并试图实现授权但遇到了CORS问题 - 我的开发服务和ui主机在localhost的不同端口上.

在登录页面上,我获得令牌并重定向到下一页.此时,对服务的数据请求开始.但服务器响应的状态为204:没有预检请求的内容...虽然,预检响应返回Access-Control-Allow-Origin:*...

Startup.cs看起来像:

public void ConfigureServices(IServiceCollection services)
{
    // ...
    services.AddCors(options =>
    {
        options.AddPolicy("Policy",
            builder => builder.AllowAnyOrigin()
            .AllowAnyMethod()
            .AllowAnyHeader() );
    });
    services.AddAuthorization();
    services.AddMvc() // ...


public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{
    app.UseCors("Policy");
    app.UseMvc();
}
Run Code Online (Sandbox Code Playgroud)

我是否会错过服务器端的内容?(在客户端,angular的拦截器只添加带有令牌的Authorization头)

PS我在OSX上使用VS Code进行开发(尽管我认为这并不重要)

更新:

正如@tpeczek建议的那样,我将cors配置更改为:

        options.AddPolicy("Policy",
            builder => builder.WithOrigins("http://localhost:80", "http://localhost")
            .AllowAnyMethod()
            .AllowAnyHeader()
            .AllowCredentials() );
Run Code Online (Sandbox Code Playgroud)

但无法摆脱错误

预检看起来像这样

更新2:

我得到的错误是

XMLHttpRequest cannot load localhost:5000/api/<method-name>;. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'localhost'; is therefore not allowed access. The …
Run Code Online (Sandbox Code Playgroud)

cors asp.net-core

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

Electron和TypeScript:'fs'无法解析

我正在尝试创建我的第一个Electron应用程序.我决定使用以下工具/技术:

  • 打字稿
  • WebPack(版本3)
  • 应对

当地环境是OS X High Sierra.

问题是我甚至无法构建我的应用程序,并且在使用WebPack进行构建时遇到错误:" Module not found: Error: Can't resolve 'fs' in '<root>/node_modules/electron'"

我有以下配置:package.json:

  "dependencies": {
    "electron": "^1.7.11"
  },
  "devDependencies": {
    "ts-loader": "^3.3.1",
    "tslint": "^5.9.1",
    "typescript": "^2.6.2",
    "webpack": "^3.10.0"
  }
Run Code Online (Sandbox Code Playgroud)

tsconfig.json:

{
  "compileOnSave": false,
  "compilerOptions": {
    "allowJs": true,
    "jsx": "react",
    "moduleResolution": "node",
    "noImplicitAny": true,
    "outDir": "./dist/",
    "sourceMap": true,
    "target": "es2015"
  }
}
Run Code Online (Sandbox Code Playgroud)

webpack.config.js:

const path = require('path');

module.exports = {
    entry: './src/index.ts',
    devtool: 'inline-source-map',
    module: {
        rules: [
            {
                test: /\.tsx?$/,
                use: 'ts-loader',
                exclude: …
Run Code Online (Sandbox Code Playgroud)

typescript webpack electron

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

BEM:向已存在的修改器添加修改器

当我使用 BEM 时,我对简单的场景感到困惑。示例中有一个基本按钮:

.button {
    // styles for button
}
Run Code Online (Sandbox Code Playgroud)

及其具有更具体样式的修饰符:

.button.button_run {
    // additional styles for this type of button
    // i.e. custom width and height
}
Run Code Online (Sandbox Code Playgroud)

有一刻我意识到我需要 的修饰符button_run,让我们将其命名为button_run_pressed

.button_run_pressed {
    // more styles, i.e. darker background color
}
Run Code Online (Sandbox Code Playgroud)

button_run_pressed问题是,按照 BEM 约定来命名最后一个元素是不正确的。但我需要仅向“运行”按钮添加“按下”样式,而不是通过编写类button_pressed和混合修饰符来为所有按钮添加“按下”样式button button_run button_pressed

我应该如何重构我的代码以匹配 BEM 约定?

css less bem

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