【发布时间】:2010-11-19 11:17:09
【问题描述】:
我必须创建一个从存储库加载所有 dll 的类并检查是否 它们继承自 IMFServicePlugin 接口并返回 有效的dll。 我已经用这个完成了......
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Reflection;
using System.Windows.Forms.ComponentModel;
using MFDBAnalyser;
namespace MFDBAnalyserAssemblyValidator
{
public class MFDBAnalyserAssemblyValidator
{
static void Main(string[] args)
{
List<string> assemblyNames = new List<string>();
Assembly[] oAssemblies = new Assembly[args.Length];
for (int assemblyCount = 0; assemblyCount < args.Length; assemblyCount++)
{
oAssemblies[assemblyCount] = Assembly.LoadFile(args[assemblyCount]);
try
{
foreach (Type oType in oAssemblies[assemblyCount].GetTypes())
{
// Check whether class is inheriting from IMFServicePlugin.
if (oType.GetInterface("IMFDBAnalyserPlugin") == typeof(IMFDBAnalyserPlugin))
{
assemblyNames.Add(args[assemblyCount].Substring(args[assemblyCount].LastIndexOf("\\") + 1));
}
}
}
catch (Exception ex)
{
lblError.Text = "ERROR";
}
}
// Passing data one application domain to another.
AppDomain.CurrentDomain.SetData("AssemblyNames", assemblyNames.ToArray());
}
}
}
但这是为了从存储库加载 dll,但我也想将这些 dll 存储在另一个 ORM 类中。
谁能帮帮我... 如果可能,请提供一些链接,以便我可以充分了解 dll 如何在 Windows/桌面应用程序中工作。
【问题讨论】:
-
“这是为了从存储库中加载 dll,但我也想将这些 dll 存储在另一个 ORM 类中”,您能否对此添加更多见解?
标签: c# winforms desktop-application