小编Tha*_*ran的帖子

如何在Reflection中迭代List

我有一个叫做学生的属性List<Student>.

在反思中,我可以获得学生财产的价值.

现在的问题是如何迭代学生列表.

我需要检查StudentID [某个值]是否在该集合中.

var collection = studentPro.GetValue(studentObj,null);

//I need to iterate like this,

foreach(var item in collection)
{
     if(item.StudentID == 33)
         //Do stuff
}
Run Code Online (Sandbox Code Playgroud)

请帮我.

c# reflection

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

如何创建所有脚本加载器都支持的angular2库

如何创建一个包含Angular 2模块的javascript文件,该模块可以被其他应用程序使用,但是在运行时直接从中央服务器加载并且不捆绑到特定应用程序的代码中?

可以将其视为Angular 2库的CDN.要求是此库的使用者将在其页面上包含单个脚本.

这是以这种方式实现它的要求,所以我对任何建议将库捆绑到单个应用程序的输出文件中的答案不感兴趣.必须在运行时直接从库的服务器加载库脚本.

  • 集中式Web应用程序称为CustomAuth
  • CustomAuth有一个名为的Angular 2模块 CustomAuthModule
  • CustomAuthModule公开了可由外部Angular 2应用程序使用的多个服务和组件.

这是所需的工作流程(从高级别).

  • 开发人员希望在名为BookLibrary的Angular2应用程序中使用CustomAuth.
  • 在开发人员的索引页面上,他们添加了指向的脚本包含http://server-url/CustomAuth/script.不应要求消费者知道有关systemjs或webpack等模块加载器的任何信息.
  • 在他们的angular2代码中,他们从CustomAuth模块(服务,组件等)导入东西.
  • 当他们使用angular-cli编译应用程序时,它将不包含CustomAuth代码,而是假设它将在运行时动态加载.

我已经做了很多关于这方面的研究,我没有任何运气可以搞清楚.任何帮助将不胜感激.

systemjs webpack umd angular

11
推荐指数
1
解决办法
497
查看次数

如何在不使用循环的情况下将项目从列表复制到堆栈

我有一个堆栈和一个列表.我需要将所有项目从列表复制到堆栈而不使用循环,即for,foreach ..等.

有推荐的做法吗?

c# stack list

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

如果属性是反射中的集合,如何知道它的类型?

List<MyClass> MyClassPro
{
   get;set;
}

MyClass obj = new MyClass();

obj.MyClassPro = null;
Run Code Online (Sandbox Code Playgroud)

考虑MyClassPro为null.在反思的情况下,我不会知道类名或属性名称.

如果我尝试使用GetType获取属性类型,

      Type t = obj.GetType();
Run Code Online (Sandbox Code Playgroud)

它返回"System.Collections.Generic.list.但我的期望是将Type作为MyClass.

我也试过这样的方式

        foreach(PropertyInfo propertyInfo in obj.GetProperties())
        {
             if(propertyInfo.IsGenericType)
             {
              Type t = propertyInfo.GetValue(obj,null).GetType().GetGenericArguments().First();
             }
        }
Run Code Online (Sandbox Code Playgroud)

但它返回错误是因为collection属性的值为null所以我们无法得到Type.

在这种情况下,我如何获得集合属性的类型.

请帮我 !

提前致谢.

c# reflection

6
推荐指数
2
解决办法
8582
查看次数

'git pull'的默认行为

为什么要git pull拉所有东西,包括新创建的远程分支却不拉git pull origin master

我正在使用git version 2.9.3.windows.2

git git-pull

6
推荐指数
2
解决办法
4725
查看次数

如何退出具有返回类型的C#递归方法

我的代码如下所示,

public object GetObjectValue(object obj, int condition)
{
     if(condition > 10)
     {
       //exit from method 
       // return; gives compiler error.      
     }
     else
     {
        GetObjectValue(obj,condition); // like this i need to use recursive call.
        //Do stuffs
     }
}
Run Code Online (Sandbox Code Playgroud)

如何退出此方法.帮我.

c# recursion

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

在反射中IEnumerable的问题

可能的重复:
如何在反射中使用IEnumerable 迭代反射问题中的列表

嗨,

我在反思中迭代List时遇到了问题.

var item = property.GetValue(obj,null); // We dont know the type of obj as it is in Reflection.

foreach(var value in (item as IEnumerable))
 {
   //Do stuff
  }
Run Code Online (Sandbox Code Playgroud)

如果我这样做,我会得到错误

使用泛型类型'System.Collections.Generic.IEnumerable'需要1个类型参数

请帮我.

c# ienumerable

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

Webpack:意外令牌:在webpack.config.ts中

我正在尝试构建一个angular +打字稿+ webpack应用程序。我将用作源并根据我的要求进行了修改。

这是我的webpack.config.ts

const {
  optimize: {
    CommonsChunkPlugin,
    DedupePlugin
  }
} = require('webpack');

const { ConcatSource } = require('webpack-sources');
const { TsConfigPathsPlugin } = require('awesome-typescript-loader');
const AssetsPlugin = require('assets-webpack-plugin');
const path = require('path');
const fs = require('fs');

function root(__path = '.') {
  return path.join(__dirname, __path);
}

// type definition for WebpackConfig is defined in webpack.d.ts
function webpackConfig(options: EnvOptions = {}): WebpackConfig {

  const CONSTANTS = {
    ENV: JSON.stringify(options.ENV),
    PORT: 3000,
    HOST: 'localhost',
    HTTPS: false
  }; …
Run Code Online (Sandbox Code Playgroud)

angularjs typescript webpack

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