【问题标题】:Get Value from generic interface从通用接口获取价值
【发布时间】:2015-04-23 11:43:34
【问题描述】:

如果我有这样的课程:

public class ApplicationDbContext : IdentityDbContext<ApplicationUser>, IDbContext

如何获得 ApplicationUserinside ApplicationDbContext 的一些属性?

【问题讨论】:

  • 你不一定能得到它的属性。
  • ApplicationUser 是类型参数,而不是实例。它没有属性,尽管您可以通过类型获取属性元数据。你想解决什么问题?
  • 好的,谁能解释一下这个问题有什么问题?
  • @kosnkov:这是你真正的问题吗?它看起来像,因为它比这个详细得多。请不要创建重复的问题。

标签: c# c#-4.0


【解决方案1】:

想想下面的程序:

class Program
{
    static void Main(string[] args)
    {
        var calc = new Calculator<string>();
        Console.WriteLine(calc.Add(1,1));
    }
}

class Calculator<T>
{
    public int Add(int a, int b)
    {
        return a + b;
    }
}

无法从计算器中获取任何类似字符串的属性。

原因是string是一个类型参数,而不是一个对象。该类是否使属性可访问取决于许多其他因素。 List&lt;T&gt; 允许取回 T 类型的对象,但其他类不需要这样做。

【讨论】:

    猜你喜欢
    • 2016-08-09
    • 2010-12-13
    • 1970-01-01
    • 2022-12-06
    • 2019-10-21
    • 1970-01-01
    • 2017-08-15
    • 2017-01-08
    • 2012-10-08
    相关资源
    最近更新 更多