如何在.NET中引用特定的基类方法? - c#

在.NET中,我试图猴子修补第3方库。我创建了一个新类Grandchild,该类继承自Parent派生的Child类。在孙子项的替代方法中,我需要跳过“子项”并调用“父项”。那可能吗?换句话说,我想做:

public class Grandchild : Child {
    public void override MyMethod() {
        // illegal syntax examples, but how can I invoke Parent.MyMethod?
        base.base.MyMethod();  // nope...
        Parent.MyMethod(); // nope...
    }
}

参考方案

出于充分的理由-安全,这是根本无法做到的,甚至无法进行反思。

如果您分发的课程强制执行了一些业务规则,并且客户能够跳过这些规则,则可能会遇到巨大的安全漏洞。这样的基本多态性规则是绝对不能违反的。

安全性也是为什么表达式树不能包含对base的引用的原因,正如Eric Lippert here所解释的。

//this is illegal
Expression<Func<string>> nonVirtualCall = () => base.Method();

如何在.Net Core中的AuthorizeAttribute类中访问appsetting.json参数 - c#

在我的ASP.NET Core MVC应用程序中,我有一个从AuthorizeAttribute继承并实现IAuthorizationFilter的类。namespace MyProject.Attributes { [AttributeUsage(AttributeTargets.Class | AttributeTargets.Method, Allow…

如何在.NET中安装Windows服务? - c#

我已经在.Net 2.0(C#)中创建了一个控制台应用程序,并希望创建一个将应用程序作为Windows服务安装的安装程序。我以前从未创建过安装程序,但正在阅读有关该主题的几篇文章。我将不胜感激那些在这方面有经验的人的任何建议或链接。谢谢。更新:我目前正在研究http://justinjmoses.wordpress.com/2008/03/27/visual…

如何在.net core中调用带参数的动作? - c#

因此,我在Startup.cs中设置了以下默认模式:app.UseEndpoints(endpoints => { endpoints.MapControllerRoute( name: "default", pattern: "{controller}/{action}/{id?}"); }); 这是我的控制器…

如何在.NET服务器端检索Http请求参数 - c#

我已经使用XmlHttpRequest调用了.NET DLL(类库项目):function httpGet(theUrl, sendParam) { var xmlHttp = null; xmlHttp = new XMLHttpRequest(); xmlHttp.open('POST', theUrl, false); xmlHtt…

如何在$ .ajax(类型get)调用中获取方法的返回值? - javascript

我有一个ASP.NET MVC应用程序,其中有一个方法,该方法返回对象列表:public List<FileObject> GetAllFilesFromDirectory() { string filePath = @"C:\FilesToWatch"; string[] fileEntries = Directory.Ge…