小编Pan*_*are的帖子

@ViewChild中的读取参数是什么

需要帮助理解以下语句中{read:ViewContainerRef}的含义.

@ViewChild('myname', {read: ViewContainerRef}) target;
Run Code Online (Sandbox Code Playgroud)

angular

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

Angular2材质'md-icon'不是已知元素

我有angular2应用程序,它使用@ angular2-material 2.0.0-alpha.8-2版本.一切正常.现在我决定将材料版本升级到最新版本,即2.0.0-alpha.9-3.我按照GETTING_STARTED中提到的步骤进行操作.之前我已经导入了以下单个模块:

@NgModule({
imports: [
    BrowserModule,
    FormsModule,
    HttpModule,
    RouterModule,

    MdIconModule,
    MdButtonModule,
    MdCardModule,
    MdCheckboxModule,

    ....
    ....  
Run Code Online (Sandbox Code Playgroud)

但是2.0.0-alpha.9-3版本的更改日志说:

"角度材料已从@ angular2-material/...包更改为@ angular/material下的单个包.随着此更改,还有一个新的NgModule,MaterialModule,其中包含所有组件."

所以我删除了明确导入的材料模块并将其更改为:

@NgModule({
imports: [
    BrowserModule,
    FormsModule,
    HttpModule,
    RouterModule,

    MaterialModule.forRoot(),
    ....
    ....
Run Code Online (Sandbox Code Playgroud)

在此更改后,我收到以下错误

'md-icon'不是已知元素:

  1. 如果'md-icon'是Angular组件,则验证它是否是此模块的一部分.
  2. 如果'md-icon'是Web组件,则将"CUSTOM_ELEMENTS_SCHEMA"添加到此组件的'@NgModule.schemas'以禁止显示此消息.

我是否需要显式导入单个模块,或者如更改日志中所述,MaterialModule包含所有组件,我不应该显式导入单个模块?如果我不应该导入单个模块那么可能是错误的来源?

typescript angular-material2 angular

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

如何使用angular2中的组件名称动态加载组件?

我目前正在使用以下代码在我的应用程序中动态加载角度组件.

export class WizardTabContentContainer {
  @ViewChild('target', { read: ViewContainerRef }) target: any;
  @Input() TabContent: any | string;
  cmpRef: ComponentRef<any>;
  private isViewInitialized: boolean = false;

  constructor(private componentFactoryResolver: ComponentFactoryResolver,   private compiler: Compiler) {
  }

  updateComponent() {
     if (!this.isViewInitialized) {
       return;
     }
     if (this.cmpRef) {
       this.cmpRef.destroy();
     }
     let factory = this.componentFactoryResolver.resolveComponentFactory(this.TabContent);

     this.cmpRef = this.target.createComponent(factory);
   }
}
Run Code Online (Sandbox Code Playgroud)

这里resolveComponentFactory函数接受组件类型.我的问题是,有没有办法可以使用组件名称字符串加载组件,例如我将组件定义为

export class MyComponent{
}
Run Code Online (Sandbox Code Playgroud)

如何使用组件名称字符串"MyComponent"而不是类型添加上面的组件?

angular

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

使用IdentityServer4保护Web API 2.2

我有Web API 2.2,它使用.Net 4.5.2框架,由angular2应用程序使用,并且存在IdentityServer4实现.我想使用IdentityServer4保护我的Web API.我的问题是我可以使用IdentityServer4保护Web API 2.2吗?如果是,那么我有两个跟进问题

  1. 我应该使用IdentityServer3.AccessTokenValidation nuget包还是我必须使用IdentityServer4.AccessTokenValidation?(我尝试使用IdentityServer4.AccessTokenValidation包,但它添加了许多与ASP.Net Core相关的依赖项)
  2. 我将不得不使用权限URL的值是什么?

我可以找到许多使用IdentityServer4来保护ASP.Net Core Web API的示例.但是找不到使用IdentityServer4保护Web API 2.2的好例子.如果可能的话,请指出Web API端所需的身份服务器配置的好例子.

.net asp.net-web-api identityserver4

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

从数据库加载ASP.Net核心授权策略

在ASP.Net Core中,我们在ConfigureServices方法中定义了授权策略,如下所示.

public void ConfigureServices(IServiceCollection services)
{
   services.AddMvc();

   services.AddAuthorization(options =>
   {
        options.AddPolicy("Founders", policy =>
           policy.RequireClaim ("EmployeeNumber", "1", "2", "3", "4", "5"));
   }
 }
Run Code Online (Sandbox Code Playgroud)

我们在控制器动作上使用它,如下所示.

[Authorize("Founders")]
public IActionResult GenerateReport()
{
   return View();
}
Run Code Online (Sandbox Code Playgroud)

这一切都很好,工作得很好.现在我的问题是,如何在代码中定义"创建者"策略(使用上面代码段中的AddPolicy方法),如何从数据库中添加策略详细信息(名称,声明类型,值)?框架中是否提供了任何钩子,我可以使用它从数据库中填充策略?

这里的想法是我应该能够添加新的员工编号列表(在数据库中),并且应该针对该列表评估策略.遗憾的是,我可以从ConfigureServices本身的数据库中提取此列表,但是在重新启动应用程序之前,不会再获取员工列表的任何新添加内容.任何指针都高度赞赏.

c# authorization asp.net-core-mvc asp.net-core

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

使用Angular2中的viewContainerRef获取子/子组件

在组件中,我们可以使用以下构造获取子组件:

@ViewChildren(MdVerTabLabelWrapper) _labelWrappers: QueryList<MdVerTabLabelWrapper>;
@ViewChildren(MdVerInkBar) _inkBar: QueryList<MdVerInkBar>;
Run Code Online (Sandbox Code Playgroud)

但是,如果我有viewContainerRef引用,那么如何获取子组件?

基本上我要做的是我有组件列表,我需要以编程方式找到这些组件的子项.

angular

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

无法为Visual Studio 2017 RC安装exenstions和更新(15.0.26014.0)

我最近安装了Visual Studio 2017 RC(15.0.26014.0),并尝试安装扩展.但是,使用Tools-> Extensions and Updates菜单安装任何扩展名失败.以下是安装日志.

27-Dec-16 10:35:19 AM - Beginning to install extension to Microsoft Visual  Studio Enterprise 2017 RC...
27-Dec-16 10:35:19 AM - Install Error : System.IO.FileNotFoundException: Unable to find the specified file.
at Microsoft.VisualStudio.ExtensionManager.ExtensionEngineImpl.GetCurrentSetupInstance()
at  Microsoft.VisualStudio.ExtensionManager.ExtensionEngineImpl.PerformSetupEngineInstall(InstallableExtensionImpl extension, Boolean installPerMachine, Boolean isPackComponent, IDictionary`2 extensionsInstalledSoFar, List`1 extensionsUninstalledSoFar, IInstalledExtensionList modifiedInstalledExtensionsList, IProgress`1 progress, InstallFlags installFlags, AsyncOperation asyncOp, IInstalledExtension& newExtension)
Microsoft.VisualStudio.ExtensionManager.ExtensionEngineImpl.InstallInternal    (InstallableExtensionImpl extension, InstallFlags installFlags, IDictionary`2 extensionsInstalledSoFar, List`1 extensionsUninstalledSoFar,
IInstalledExtensionList modifiedInstalledExtensionsList, AsyncOperation asyncOp, IProgress`1 progress)
at Microsoft.VisualStudio.ExtensionManager.ExtensionEngineImpl.BeginInstall(IInstallableExtension installableExtension, InstallFlags installFlags, AsyncOperation …
Run Code Online (Sandbox Code Playgroud)

visual-studio-2017

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

在Visual Studio 2017 RC中调试ASP.Net Core 1.1 MVC源代码

早期使用global.json文件调试Visual Studio 2015中的ASP.Net Core MVC源代码非常简单.有没有人试图在Visual Studio 2017 RC中调试ASP.Net Core MVC源代码?在VS 2017 RC中是否有可能?在VS 2017 RC中成功调试MVC源代码的人可以列出一些步骤吗?

更新:我尝试设置符号来源,如Tseng评论中所述.但是它仍然无法加载符号.它甚至没有搜索符号源https://nuget.smbsrc.net/.以下是符号服务器设置. 在此输入图像描述

以下是fiddler截图. 在此输入图像描述

asp.net-core visual-studio-2017

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

关于将应用程序从 .Net Framework 移植到 .Net core 的问题

在微软关于“移植过程概述”的文档中,1 点提到了以下内容

将您希望移植到目标 .NET Framework 4.7.2 或更高版本的所有项目重新定位。此步骤可确保当 .NET Core 不支持特定 API 时,您可以对特定于 .NET Framework 的目标使用 API 替代方案。

有人可以用一些例子帮助我理解第二句话吗?我无法理解为什么在移植到 .Net Core 之前需要将项目定位到 .Net Framework 4.7.2。

另一个链接中他们提到了以下事情

此处列出的版本代表 NuGet 用于确定给定 .NET Standard 库是否适用的规则。虽然 NuGet 认为 .NET Framework 4.6.1 支持 .NET Standard 1.5 到 2.0,但使用为 .NET Framework 4.6.1 项目中的这些版本构建的 .NET Standard 库存在一些问题。对于需要使用此类库的 .NET Framework 项目,我们建议您将项目升级到目标 .NET Framework 4.7.2 或更高版本。

知道他们在这里谈论什么问题吗?(上面以粗体突出显示)

.net .net-core

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