小编Mak*_*kla的帖子

Angular2 +自动对焦输入元素

如何自动对焦输入元素?与问题类似,但与AngularDart不同.像这样的东西:

<input type="text" [(ngModel)]="title" [focus] />
//or 
<input type="text" [(ngModel)]="title" autofocus />
Run Code Online (Sandbox Code Playgroud)

Angular2是否支持此功能?

最近的问题是这个问题,但是有没有更简单/更简单的解决方案,因为我没有"输入框列表".在提供的链接*ngFor="#input of inputs"中使用,但我在控件模板中只有1个输入.

typescript angular

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

从Controller调用SignalR Core Hub方法

如何从Controller调用SignalR Core Hub方法?
我使用ASP.NET Core 2.0与Microsoft.AspNetCore.SignalR(1.0.0-alpha2-final).

我有与Excel,SolidEdge通信的Windows服务...当操作完成后,它会在ASP.NET核心应用程序中向我的控制器发送请求.现在我需要通过SignalR通知连接到服务器的所有客户端,外部程序完成了一些任务.
我无法改变窗口服务的工作方式.(无法从窗口服务连接到SignalR).
我为旧的SignalR(GlobalHost.ConnectionManager.GetHubContext)找到了很多解决方案,但是已经发生了很大变化,而且这些解决方案不再适用了.

我的控制器:

[Route("API/vardesigncomm")]
public class VarDesignCommController : Controller
{
    [HttpPut("ProcessVarDesignCommResponse/{id}")]
    public async Task<IActionResult> ProcessVarDesignCommResponse(int id)
    {
        //call method TaskCompleted in Hub !!!! How?

        return new JsonResult(true);
    }
}
Run Code Online (Sandbox Code Playgroud)

我的中心:

public class VarDesignHub : Hub
{
    public async Task TaskCompleted(int id)
    {
        await Clients.All.InvokeAsync("Completed", id);
    }
}
Run Code Online (Sandbox Code Playgroud)

c# signalr asp.net-core-2.0 asp.net-core-signalr

39
推荐指数
4
解决办法
3万
查看次数

字体真棒5与Angular

如何在Angular(2+)中使用font-awesome 5

我试过在组件中添加它:

import {faChevronLeft, faChevronRight} from '@fortawesome/fontawesome-free-solid';
import fontawesome from '@fortawesome/fontawesome';
...
constructor(){
   fontawesome.library.add(faChevronLeft, faChevronRight);
}
Run Code Online (Sandbox Code Playgroud)

然后在HTML中:

<span class="fa" [class.fa-chevron-left]="direction==='left'" [class.fa-chevron-right]="direction==='right'"></span>
Run Code Online (Sandbox Code Playgroud)

但这给了我一个圆圈中闪烁的问号.

font-awesome font-awesome-5 angular angular-fontawesome

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

如何使用 EF 3.1 为实体框架 GroupBy 中的每个组选择前 N 行

我需要为带有实体框架的表中的每个组获取前 10 行。基于 SO 上的其他解决方案,我尝试了两件事:

var sendDocuments = await context.Set<DbDocument>
    .Where(t => partnerIds.Contains(t.SenderId))
    .GroupBy(t => t.SenderId)
    .Select(t => new
    {
        t.Key,
        Documents = t.OrderByDescending(t2 => t2.InsertedDateTime).Take(10)
    })                
    .ToArrayAsync();
Run Code Online (Sandbox Code Playgroud)

错误:

System.InvalidOperationException: 'The LINQ expression
'(GroupByShaperExpression: KeySelector: (d.SenderId), 
ElementSelector:(EntityShaperExpression: 
    EntityType: DbDocument
    ValueBufferExpression: 
        (ProjectionBindingExpression: EmptyProjectionMember)
    IsNullable: False ) )
    .OrderByDescending(t2 => t2.InsertedDateTime)' could not be translated. Either rewrite the query in a form that can be translated,
> or switch to client evaluation explicitly by inserting a call to
> either AsEnumerable(), AsAsyncEnumerable(), …
Run Code Online (Sandbox Code Playgroud)

entity-framework group-by entity-framework-core ef-core-3.1

12
推荐指数
1
解决办法
4354
查看次数

ASP.NET Core 2.1 Angular 6.0 SPA模板 - 用于索引而非静态页面的razor页面(cshtml)

我想我的迁移ASP.NET Core 2.0 Angular 5与应用程序webpack安装到ASP.NET Core 2.1 Angular 6使用Angular-Cli.

简短的问题:

如何强制从解析剃刀页的指令cshtmlMicrosoft.AspNetCore.SpaServices.Extensions

我不希望使用index.htmlAngular.json,但index.cshtml.

详细描述:

我从Angular模板开始了一个新的ASP.NET Core项目.有很多东西可以神奇地起作用.

  1. index.html文件ClientApp/src夹内有一个文件,在应用程序启动时会自动提供.
  2. 当应用程序运行时,才</body>从标签index.html几个脚本插入(从第一个点)inline.bundle.js,polyfills.bundle.js,vendor.bundle.js,main.bundle.jsstyles.bundle.css之前</head>的标签.

我不确定是谁插入了这些脚本,但我想将它们插入到Razor页面(cshtml)中.

我试图使用旧项目中的代码:

<!DOCTYPE html>
<html>
<head>
    <base href="/" />
    <title>@ViewData["Title"]</title>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
</head>
<body>
@{string googleAnalyticsId …
Run Code Online (Sandbox Code Playgroud)

asp.net-core angular-cli angular asp-net-core-spa-services angular-cli-v6

11
推荐指数
3
解决办法
4264
查看次数

将@ fortawesome/fontawesome包含在angular-cli项目中

我正在尝试将font awesome 5包含在运行Angular> 5.0.0的angular-cli项目(1.6.0)中.

我用过(如上所述):

yarn config set @fortawesome:registry https://npm.fontawesome.com/xxxxx-xxxx-xxx-xxx-xxxxxxx
yarn add @fortawesome/fontawesome
yarn add @fortawesome/fontawesome-pro-light
Run Code Online (Sandbox Code Playgroud)

它成功地获得了包.现在我想把包裹包含在我的angular-cli中.在我app.component.ts试图做的事情中(如https://www.npmjs.com/package/@fortawesome/fontawesome所述):

import  fontawesome  from '@fortawesome/fontawesome'
import { faUser } from '@fortawesome/fontawesome-pro-light'
Run Code Online (Sandbox Code Playgroud)

但是打字稿会引发错误:

ERROR in src/app/app.component.ts(2,9): error TS1192: Module '"xxx/node_modules/@fortawesome/fontawesome/index"' has no default export.
Run Code Online (Sandbox Code Playgroud)

使用Font Awesome 4我只将.css文件包含在"styles"数组中.但Font Awesome 5没有包含所有css的css文件.它只是一堆.js文件.

如何在Angular CLI项目中正确包含Font Awesome 5?(我希望能够<i class="fal fal-user"></i>在我的标记中使用)

font-awesome angular-cli font-awesome-5 angular angular-fontawesome

10
推荐指数
1
解决办法
9017
查看次数

从Fontawesome导入所有图标

我以这种方式在Angular项目中使用Fontawesome 5:

import fontawesome from '@fortawesome/fontawesome';
import { faBold, faItalic, faUnderline } from '@fortawesome/fontawesome-free-solid';
Run Code Online (Sandbox Code Playgroud)

在构造函数中:

fontawesome.library.add(faBold, faItalic, faUnderline)
Run Code Online (Sandbox Code Playgroud)

但是分别导入每个图标非常愚蠢.我能以某种方式一次导入所有图标吗?

upd:import * as icons ...不起作用.

font-awesome font-awesome-5 angular angular-fontawesome

10
推荐指数
1
解决办法
3077
查看次数

高度100%的Fieldset孩子太大了

我试图将一个fieldset孩子伸展到100%,但是孩子(ul)太大而且出现了一些溢出(在我的情况下被削减).

如何将fieldset孩子伸展到100%,但没有溢出?

fieldset {
  height: 300px;
  overflow: hidden;
}
ul {
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: space-around;
    background-color: #ffffbb;
}
Run Code Online (Sandbox Code Playgroud)
<fieldset>
  <legend>How to stretch child</legend>
  <ul>
    <li>item 1</li>
    <li>item 2</li>
    <li>item 3</li>
    <li>item 4</li>
    <li>item 5</li>
    <li>item 6</li>
    <li>item 7</li>
    <li>item 8</li>
  </ul>
</fieldset>
Run Code Online (Sandbox Code Playgroud)

以防万一这里也是外部小提琴:小提琴中的例子.

编辑:

将高度设置为特定像素是必要的.我从C#windows应用程序通过WebSocket获得表单布局(设计).每个组件都是绝对位置,具有与C#应用程序完全相同的属性.这意味着,左,上,宽度和高度.

html css css3 flexbox

9
推荐指数
1
解决办法
868
查看次数

将指令限制为 Angular 中的特定主机(组件)

是否可以限制哪个组件可以具有自定义指令?

例如:

@Directive({ 
    selector: '[myHighlight]', 
    host: "my-component" //!!!!!!!!!
})
export class HighlightDirective {
    constructor(el: ElementRef) {  //el is my-component - can not be nothing else !!!!
       el.nativeElement.style.backgroundColor = 'yellow';
    }
}

@Component({selector: "my-component"})...
Run Code Online (Sandbox Code Playgroud)

用例:
我想为特定的第三方组件编写指令。我将使用该第三方组件属性,因此在另一个组件上的指令没有任何意义并且会引发错误。

这意味着myHighlightondiv将被忽略。

angular2-directives angular

9
推荐指数
1
解决办法
1791
查看次数

.NET Core中运行时间短的任务

我刚刚发现了IHostedService.NET Core 2.1 BackgroundService类.我觉得这个想法太棒了.文档.

我发现的所有示例都用于长时间运行的任务(直到应用程序死亡).但我需要它很短的时间.这样做的正确方法是什么?

例如:
我想在应用程序启动后执行一些查询(大约需要10秒钟).并且只有在开发模式下.我不想延迟应用程序启动,所以IHostedService似乎很好的方法.我不能使用Task.Factory.StartNew,因为我需要依赖注入.

目前我这样做:

public class UpdateTranslatesBackgroundService: BackgroundService
{
    private readonly MyService _service;

    public UpdateTranslatesBackgroundService(MyService service)
    {
        //MService injects DbContext, IConfiguration, IMemoryCache, ...
        this._service = service;
    }

    protected override async Task ExecuteAsync(CancellationToken stoppingToken)
    {
        await ...
    }
}
Run Code Online (Sandbox Code Playgroud)

启动:

public static IServiceProvider Build(IServiceCollection services, ...)
{
    //.....
    if (hostingEnvironment.IsDevelopment())
        services.AddSingleton<IHostedService, UpdateTranslatesBackgroundService>();
    //.....
}
Run Code Online (Sandbox Code Playgroud)

但这似乎有点矫枉过正.是吗?注册singleton(表示类在应用程序存在时存在).我不需要这个.只需创建类,运行方法,配置类.全部在后台任务.

c# .net-core asp.net-core

9
推荐指数
2
解决办法
6489
查看次数