小编Sam*_*yan的帖子

在基类上使用虚拟异步方法是否可以?

我正在使用一些代码,我有2个类,逻辑和代码非常相似.我protected async void LoadDataAsync()在这两个课上都有方法.
目前我正在重构它并考虑将共享逻辑移动到基类.
是否可以virtual async在基类上使用方法并在派生类上覆盖它?
它有什么问题吗?
我的代码看起来像这样:

public class Base
{
   protected virtual async void LoadDataAsync() {}
}

public class Derived : Base
{
   protected override async void LoadDataAsync()
   {
       // awaiting something
   }
}
Run Code Online (Sandbox Code Playgroud)

已经提出类似(但不相同)的问题.

c# asynchronous async-await c#-5.0

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

带代表或开关的字典?

我正在编写一个解析器,它调用一些依赖于某些值的函数.

我可以用这样的简单开关实现这个逻辑:

switch(some_val)   
{   
    case 0:   
        func0();   
        break;   
    case 1:   
        func1();   
        break;   
}     
Run Code Online (Sandbox Code Playgroud)

或者与代表和这样的字典:

delegate void some_delegate();   
Dictionary<int, some_delegate> some_dictionary = new Dictionary<int, some_delegate>();   
some_dictionary[0] = func0;   
some_dictionary[1] = func1;   

some_dictionary[some_value].Invoke();    
Run Code Online (Sandbox Code Playgroud)

这两种方法是否相同,哪种方法更受欢迎?

c# delegates dictionary switch-statement

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

2种通过设置属性值来创建新对象的方法

可能重复:
为什么C#3.0对象初始化器构造函数括号是可选的?

大家好,
我有Question一个有财产的班级Text

public class Question
{
    public string Text { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

现在我想通过赋予属性值来创建这种类型的对象.
我可以通过以下两种方式做到这一点:

Question q = new Question { Text = "Some question" };

Question q = new Question() { Text = "Some question" };

这两种情况有什么区别,如果它们是相同的,为什么我们需要两者?
谢谢.

.net c#

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

Action <T>或Action <in T>?

我在MSDN上阅读有关Action Delegate的内容,以及语法下的内容

 public delegate void Action<in T>(T obj);
Run Code Online (Sandbox Code Playgroud)

比我查看c-sharpcorner.com并使用了这种语法

public delegate void Action<T>(T obj);   
Run Code Online (Sandbox Code Playgroud)

你可以看到inT之前没有.
哪种语法是正确的,这是什么in意思?
编辑:使用相同的语法Predicate.

谢谢.

.net c# generics delegates

10
推荐指数
2
解决办法
4110
查看次数

VS 2010的单元测试教程

我是单元测试的新手,需要一些书或教程.我在谷歌看了很多,但找不到任何东西.我看到了这个问题,但没有答案,这就是为什么我也在问它.
我有什么可以开始的吗?
谢谢.

.net testing unit-testing visual-studio-2010

8
推荐指数
2
解决办法
3868
查看次数

我可以在Silverlight 3应用程序中添加dll吗?

我想把dll文件添加到我的Silverlight应用程序中,但是得到的错误是我无法添加不是用Silverlight运行时构建的引用.
有什么解决方案吗?
谢谢.

silverlight silverlight-3.0

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

x:xaml文件中控件的名称和名称有什么区别吗?

我是Silverlight的新手.
当我使用Visual Studio向我的xaml文件添加一些控件时,它使用Name属性设置控件名称,但也有x:Name.
是否存在差异以及何时使用它们?
谢谢.

silverlight xaml silverlight-2.0 silverlight-3.0 silverlight-4.0

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

无法在Asp.net核心Action中取消任务

我试图取消在Asp.net核心行动中运行的任务.为此,我使用这个github样本.如果在控制台中运行服务,我可以取消任务,但如果我在IIS(或IIS Express)下运行任务没有取消.我在其他问题上看到了类似的问题.在此基础上,问题应该已经解决.我正在使用.Net core 2.1.

asp.net-mvc kestrel .net-core kestrel-http-server asp.net-core

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

这个初始化方法有什么区别?

这两个代码有什么区别?

class SomeClass   
{   

   SomeType val = new SomeType();   

}   
Run Code Online (Sandbox Code Playgroud)

class SomeClass  
{      
   SomeType val;   

   SomeClass()   
   {   
       val = new SomeType();   
   }   

}   
Run Code Online (Sandbox Code Playgroud)

选择哪种方法?

.net c#

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

如何在Silverlight中围绕圆柱包装图像

我正在尝试在silverlight中围绕圆柱体包裹图像.我在谷歌看了很多,但没有找到任何东西.据我所知,它可以用像素着色器完成,但不知道如何.
可能吗?
谢谢.

silverlight silverlight-3.0 silverlight-4.0 pixel-shader

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