【c# – 获取最新方法,始终重新下载】教程文章相关的互联网学习教程文章

如何在Factory中重载通用C#方法?【代码】

我想创建一个类似工厂的东西,但这不是工厂模式的实现. 我有一个IServiceFactory接口:public interface IServiceFactory {TServiceInterface CreateService<TServiceInterface>(string url); }我想在实现中创建两个不同的服务,以实现两个不同的接口.认为我有:public class FirstService : IFirstService {} public class SecondService : ISecondService {}public class ServiceFactory : IServiceFactory {public IFirstService ...

C#-中止任务,其中包含永无休止的库方法(无法检查取消请求)【代码】

我使用Pcap.Net进行流量监控,我需要它来接收数据包,直到用户请求取消为止.我以这种方式(简化)创建监视任务:var task1 = Task.Run(() => { communicator.ReceivePackets(0, PacketHandlerCallback); } /*, token*/);这里的0表示ReceivePackets的执行永无止境,PacketHandlerCallback是一种将针对每个接收到的数据包执行的方法. ReceivePackets是同步的,不支持取消.通常,在我的问题中,它可能是我们无法编辑的任何其他无限同步方法. 问...

C# 学习笔记 多态(一)虚方法【代码】

在面对对象编程中,类的三大特性分别为封装,继承,多态。其中多态的具体实现,依赖于三个方法,也就是虚方法,抽象类和接口。多态的具体作用是什么呢?或者说多态的存在有什么意义呢?多态的存在有效的降低了程序的耦合度,在使用的时候,不仅可以表现大家都有的共性,还能在必要的时候突出一些特殊的的个性。那么如何用上文三个方法实现多态呢?今天先说下虚方法:首先,我们定义一个人类的基类。其中包含了这个人的姓名和国籍。...

c#-创建方法以返回Serilog LoggerConfiguration(Asp.Net Core 2.0)【代码】

最初,我为Serilog使用了一个日志文件,通过完成此操作var slc = new SerilogSubLoggerConfiguration(); configuration.GetSection("Serilog:SubLogger").Bind(slc);然后在Program.cs的Main方法中配置SubLoggerLog.Logger = new LoggerConfiguration().ReadFrom.Configuration(configuration).WriteTo.Logger(logger => logger.Filter.ByIncludingOnly(lvl => lvl.Level == slc.Level).WriteTo.RollingFile(slc..PathFormat)).Cre...

c#-FakeItEasy.Invokes()中的方法名称【代码】

FakeItEasy很棒.非常感谢所有贡献者. 话虽如此,我遇到了一个用例,我想从配置了Invokes的lambda内部知道实际上调用了伪对象的什么方法,而不必为每个方法显式配置Invokes. 这是我的意思的简单示例:public interface ILogger {void Info(string msg);void Error(string msg); }var logger = A.Fake<ILogger>();A.CallTo(logger).Invokes(() => {Debug.WriteLine(CurrentMethodName); // CurrentMethodName should return "Error", or...

C#-ASP.NET Web API DELETE方法错误【代码】

在实体框架中使用ASP.NET Web API DELETE方法传递学生ID,如果该ID存在于表中,则删除记录.当我尝试对其进行测试时,出现以下错误消息 “ System.Data.Entity.Utilities.Check.NotNull [T](T值,字符串parameterName)System.Data.Entity.DbContext.Entry [TEntity](TEntity实体)”public class StudentController : ApiController {[HttpDelete][Route("student/DeleteStudent/{id}")]public IHttpActionResult DeleteStudent(string i...

C#-dotnet核心方法“ ValidateOptions” …没有实现【代码】

我正在构建一个.NET Core解决方案,该解决方案构建得很好,但是当我尝试发布它时,它崩溃并出现以下错误:Method 'ValidateOptions' in type 'Microsoft.CodeAnalysis.CSharp.CSharpCompilationOptions' from assembly 'Microsoft.CodeAnalysis.CSharp, Version=2.3.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' does not have an implementation.at Microsoft.CodeAnalysis.CSharp.CSharpCompilation.Createat Microsoft...

首页> C#>如何只使用Castle.DynamicProxy拦截基类方法【代码】

我有2个类,一个用于通过缓存访问数据库和子类.我可以更改两个类的源代码,但是有许多结构不同的类,因此我正在寻找一种方法来生成通用解决方案,以帮助我仅拦截用Attribute标记的方法或其他方法. 这是一个例子public class BaseClass {[MyAttribute]public virtual MyEntity[] GetAll() {}[MyAttribute]public virtual MyEntity GetByKey(int key) {}[MyAttribute]public virtual void GetByName(string name) {} }public class Child...

在父方法C#中返回子类【代码】

我有家长班:public abstract class ParentClass {public ParentClass ParentMethod() { ... } }我还有两个孩子:public class ChildA : ParentClass {public ChildA ChildAMethod1(){... return this; }public ChildA ChildAMethod2(){... return this; } }public class ChildB : ParentClass {public ChildB ChildBMethod() { ... return this; } }在这种情况下,我可以这样写:new ChildA().ChildAMethod1().ChildAMethod2();但是...

C#-ASP.NET Core WebAPI 2 PUT方法名称【代码】

我已经苦苦挣扎了一段时间,似乎无法解决这个问题. 我有一个控制器,说“老师”. 我想要一个具有不同名称的PUT操作,但是接受[FromBody]一个复杂的DTO. 如何调用?我尝试的一切都给了我404.[Produces("application/json")] [Route("api/Teacher")] public class TeacherController : Controller {private readonly ITeacherService _teacherService;public TeacherController(ITeacherService teacherService){this._teacherService =...

c#-在基本控制器中实现依赖注入的最佳方法是什么【代码】

我有以下麻烦,在我的基本控制器中,我做了依赖注入.而且我有一个带有基本控制器实现的子类,我需要通过构造函数.所以我的疑问是,实现依赖注入的方法正确吗?如果没有,什么是最好的方法? 我使用unity来实现D.I,我的想法是VS2017 Web API 2. 遵循此代码,我使用:基本控制器或父控制器:public class BaseController : ApiController {public string[] includes = null;private readonly IFiltroServico servico;public BaseController...

c#-ASP.NET Core路由到HttpGet路由中我的名字以外的其他方法【代码】

我的ASP.NET核心应用程序中有一个简单的控制器.想法是该控制器称为CreditData,而我的端点可以是例如/ api / creditdata /,然后它应该具有默认的预期API方法. 我想要两种方法: > / api / creditdata,它应该有一个查询,例如/ api / creditdata?query = text1,text2> / api / creditdata / value,其中应使用/ api / creditdata / text1之类的查询 我尝试将其设置如下:[Route("api/[controller]")]public class CreditDataControlle...

Javascript-在Typescript中,有什么方法可以将类编写为数组,所以我可以做class [i],就像C#中的List【代码】

我是一位从C#开始的新游戏开发人员. 现在我需要将我的游戏之一转移到打字稿上. 我试图用我在C#中非常熟悉的打字稿自定义列表.我的代码如下:export class List {private items: Array; constructor() {this.items = []; }get count(): number {return this.items.length; }add(value: T): void {this.items.push(value); }get(index: number): T {return this.items[index]; } contains(item: T): boolean{if(this.items.indexOf(i...

c#-CALLED方法中的锁语句是否保护对VIA`ref`参数的字段访问?【代码】

鉴于private object _x;private object LoadAndSet(ref object x) {// lock established over read and updatelock (somePrivateObjectNotUsedElsewhereThatIsIrrelvantToTheQuestion) {if (x == null)x = Load();return x;} }调用为public object Load() {return LoadAndSet(ref _x); }>锁的原子性/可见性保证是否涵盖“通过引用传递给字段(_x)的读取/写入”? 也就是说,第一个代码是否等效于以下代码,其中直接使用该字段? (分配...

c#-具有泛型返回类型的泛型类和方法的委托【代码】

将委托与泛型类一起使用时,会遇到问题.类是泛型的,但方法不是.但是,方法返回类型是泛型类型.public abstract class BaseEntity {public DateTime CreateDateTime { get; set; } = DateTime.Now;public long CreateUserId { get; set; } }public class ClassA : BaseEntity {}class Program {private delegate object MyDelegate(long id);private static MyDelegate _myHandler;static void Main(string[] args) {var genericType ...