小编Sla*_*oph的帖子

除了JavaScript和VBScript之外,还有哪些客户端Web脚本语言?

  1. 除了JavaScript和VBScript之外,您看到了多少客户端脚本语言实现?我爱:type="text/C++Script",text/CSharpScript,text/oberonScript等.

  2. 如果我的浏览器支持这些语言,我该如何学习?

html browser client-side

13
推荐指数
1
解决办法
6264
查看次数

将对象转换为基接口

我有一个问题,将对象转换为生成在另一个库中的其中一个基本接口.这是它的代码:

BaseSDK.dll

public interface IPlugin
{
    void Run();
}
Run Code Online (Sandbox Code Playgroud)

CustomPlugin.Definition.dll:

public interface ICustomPlugin
{
    void DoCustomStuff();
}
Run Code Online (Sandbox Code Playgroud)

CustomPlugin.dll(引用BaseSDK.dll和CustomPlugin.Definition.dll):

public class CustomPlugin: IPlugin, ICustomPlugin
{
    public void Run()
    {

    }

    public void DoCustomStuff()
    {

    }
}
Run Code Online (Sandbox Code Playgroud)

Host.exe(引用BaseSDK.dll和CustomPlugin.Definition.dll):

IPlugin plugin;
public void DoStuff()
{
    plugin = LoadPluginAndCreateAnInstanceSomehow();
    // I know plugin is a CustomPlugin
    ICustomPlugin customPlugin = plugin as ICustomPlugin; //cast fails.
    customPlugin.DoCustomStuff();
}
Run Code Online (Sandbox Code Playgroud)

我不明白; 这只是普通的类型转换类型到它的基类型.我怎样才能解决这个问题?还是其他选择?

编辑:这是一个总结LoadPluginAndCreateAnInstanceSomehow():

Assembly ass = Assembly.LoadFrom(filename);
Type t = ass.GetType(ass.FullName + ".CustomPlugin");
plugin = …
Run Code Online (Sandbox Code Playgroud)

c# inheritance plugins casting interface

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

标签 统计

browser ×1

c# ×1

casting ×1

client-side ×1

html ×1

inheritance ×1

interface ×1

plugins ×1