我有一个具有解决方案和类库的项目
我创建了一个名为 ManagerClass.cs 的BaseClass,它继承自 System.Web.UI.Page ,使这个类成为我所有的BaseClass,在类库中我有一个类名为 AlertMessage.cs 我希望直接从任何继承的类中使用此类作为示例:
这是我的默认类继承自Manager类:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace CustomModalMessages
{
public partial class Default : ManagerClass
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void btnPopUp_Click(object sender, EventArgs e)
{
AlertMessage.Show("", false, Page, GetType());
}
}
}
我的经理班也是这样的:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using SharedComponent;
namespace CustomModalMessages
{
public class ManagerClass : System.Web.UI.Page
{
protected override void OnLoad(EventArgs e)
{
AlertMessage.Show("", true, Page, GetType());
base.OnLoad(e);
}
protected override void OnError(EventArgs args)
{
Exception ex = Server.GetLastError().GetBaseException();
string sStackTrace = ex.StackTrace.ToString();
string sErrorDate = DateTime.UtcNow.ToString();
string sErrorPage = ex.Source.ToString();
string sErrorMessage = ex.Message.ToString();
}
}
}
你可以看到我做了一个Using SharedComponent;我想在所有继承的类中使用public而不调用Using。
提前致谢
答案 0 :(得分:2)
db.inventory.find( { field: { $in: [ "1", "2"] } } )
语句不能在C#中继承。他们甚至没有编译成代码 - 他们只是开发人员的一个实用工具,因此他不必输入完全限定的类型名称(例如$code = 200;
$text = 'OK';
$protocol = (isset($_SERVER['SERVER_PROTOCOL']) ? $_SERVER['SERVER_PROTOCOL'] : 'HTTP/1.0');
header($protocol . ' ' . $code . ' ' . $text);
$GLOBALS['http_response_code'] = $code;
echo 'SUCCESS';
)
使用Try Roslyn您可以看到此类:
using
编译为
SharedComponent.AlertMessage
方法using System;
public class C {
public void M() {
Console.WriteLine("");
}
}
内的.class public auto ansi beforefieldinit C
extends [mscorlib]System.Object
{
// Methods
.method public hidebysig
instance void M () cil managed
{
// Method begins at RVA 0x2050
// Code size 13 (0xd)
.maxstack 8
IL_0000: nop
IL_0001: ldstr ""
IL_0006: call void [mscorlib]System.Console::WriteLine(string)
IL_000b: nop
IL_000c: ret
} // end of method C::M
.method public hidebysig specialname rtspecialname
instance void .ctor () cil managed
{
// Method begins at RVA 0x205e
// Code size 8 (0x8)
.maxstack 8
IL_0000: ldarg.0
IL_0001: call instance void [mscorlib]System.Object::.ctor()
IL_0006: nop
IL_0007: ret
} // end of method C::.ctor
} // end of class C
行是此处的兴趣点。 IL代码中指定了完全限定的类型名称,无法找到IL_0006
语句。