草庐IT

non-interface

全部标签

c# - 使用 "dynamic"的基于接口(interface)的方法调用是否仍应遵守 C# 方法解析规则?

据我了解,每种语言都可以拥有自己的dynamic处理程序,以便应用适当的规则。我不确定以下内容是否正确/不正确;想法?场景:两个接口(interface)(一个实现另一个)和一些方法:publicinterfaceIA{voidBar(objecto);}publicinterfaceIB:IA{voidFoo(objecto);}和一个基本的实现:publicclassB:IB{publicvoidFoo(objecto){Console.WriteLine("Foo");}publicvoidBar(objecto){Console.WriteLine("Bar");}}现在,使用

c# - C# 中的 "Abstract"接口(interface)

这是一个学术问题。背后可以说是一个X-Y问题,稍后我可能会单独发布。但我实际上对这里的学术问题特别感兴趣。我经常发现我有一组接口(interface),它们都具有共同的属性。我想定义一个基本接口(interface)来通用化这些接口(interface),部分原因是为了避免重复,部分原因是我可以传递一个对象并在不知道确切类型的情况下使用通用方法。也许我有IFooRepository,IBarRepository等,我可以声明IRepository.或者我有一个IHappyBot,ISadBot,IConfusedBot,所有这些都有IBot共同点。值得注意的是,没有任何类会直接实现这些

c# - 通用方法参数的接口(interface)约束

在我寻求正确理解C#的过程中,我发现自己在问在泛型方法参数上指定接口(interface)约束与简单地将接口(interface)指定为参数类型之间的实际区别是什么?publicinterfaceIFoo{voidBar();}publicstaticclassClass1{publicstaticvoidTest1(Targ1)whereT:IFoo{arg1.Bar();}publicstaticvoidTest2(IFooarg1){arg1.Bar();}}编辑我知道我的示例非常狭窄,因为它只是一个示例。我对超出其范围的差异很感兴趣。 最佳答案

c# - 我可以将基于接口(interface)的对象传递给 MVC 4 WebApi POST 吗?

我想要这样的API:publicclassRelayController:ApiController{//POSTapi/valuespublicvoidPost([FromBody]IDataRelayPackagepackage){MessageQueuequeue=newMessageQueue(".\\private$\\DataRelay");queue.Send(package);queue.Close();}}我得到的“包”值为空,所以我想知道可能出了什么问题。我唯一的想法是默认的JSON序列化器无法处理这个问题,但我不清楚如何修复它。 最佳答

c# - IoC - 单一接口(interface)的多种实现支持

我想知道为什么.NetIoC容器不容易支持单个接口(interface)的多种实现!可能是我错了,但据我所知,像Ninject这样的框架使用注释(how?)部分支持此功能。我认为Windsor或简单注入(inject)器等其他框架没有支持这种情况的简单机制。为什么很多框架不支持这有什么原因吗?AFAIK,使用接口(interface)的最重要原因之一是实现松散耦合。如果旨在改善松散耦合的框架不能流畅地支持单个接口(interface)的多个实现,我不明白为什么!附言当然我理解在运行时会有解析的问题,容器会纠结选择哪个实现,但这是设计中必须要考虑的事情,对吧?

c# - 如何使用 IComparable 接口(interface)?

我需要一个基本示例来说明如何使用IComparable接口(interface),以便我可以按升序或降序以及我正在排序的对象类型的不同字段进行排序。 最佳答案 好吧,因为你正在使用List只使用Comparison会简单得多,例如:Listdata=...//sortbynamedescendingdata.Sort((x,y)=>-x.Name.CompareTo(y.Name));当然,对于LINQ,您可以只使用:varordered=data.OrderByDescending(x=>x.Name);但是你可以在List中重新

JavaScript 正则表达式 : find non-numeric character

假设我有这两个字符串:“5/15/1983”和“1983.05.15”。假设字符串中的所有字符都是数字,除了可以出现在字符串中任何位置的“分隔符”字符。只有一个分隔符;字符串中任何给定非数字字符的所有实例都将相同。如何使用正则表达式提取此字符?有没有比下面的方法更有效的方法?"05-15-1983".replace(/\d/g,"")[0];谢谢! 最佳答案 "05-15-1983".match(/\D/)从技术上讲,这会返回一个包含一个字符串的数组,但它会在您需要的大多数地方隐式转换为字符串。

javascript - 使用 jquery done on "non-ajax"函数

我可以在“非ajax”函数上使用jquerydone()吗?当我尝试执行类似这样的操作时,出现错误UncaughtTypeError:Cannotcallmethod'done'ofundefined。functioncountThreeSeconds(){varcounter=0,timer=setInterval(function(){if(counter==3){console.log("Alldone.Thatwasthreeseconds.");window.clearInterval(timer);}else{console.log("Notthereyet.Counter

javascript - JSON.解析 : unexpected non-whitespace character after JSON data in javascript

通过Firebug调试我的highchartsjavascript代码时出现此错误。以下是相关的代码行:varvalpair=[parseInt(items[0]),cumulative];rain_series.data.push(JSON.parse(valpair));items[0]只是"1234567",如果我将console.log(valpair)添加到我的代码中,我得到此输出:[1234567,0]这似乎是有效的JSON。尽管如此,我仍然坚持我的错误(我搜索了一个解决方案,但没有找到适合我的情况)。这里有人知道我做错了什么吗? 最佳答案

javascript - 触发 CSS :active selector for non-anchor elements

如何通过JavaScript(jQuery)触发非anchor元素的:active状态?在审查时Section5.11.3oftheW3CCSS2specification在引用:hoverpseudoselectortoseeabouttriggeringaactivation时,我遇到了以下内容,这让我相信它应该是可能的:"The:activepseudo-classapplieswhileanelementisbeingactivatedbytheuser.Forexample,betweenthetimestheuserpressesthemousebuttonandrelea