相关疑难解决方法(0)

如何在.NET中运行时将文件夹添加到程序集搜索路径?

我的DLL由第三方应用程序加载,我们无法自定义.我的程序集必须位于自己的文件夹中.我无法将它们放入GAC(我的应用程序需要使用XCOPY进行部署).当根DLL尝试从另一个DLL(在同一文件夹中)加载资源或类型时,加载失败(FileNotFound).是否可以以编程方式(从根DLL)将我的DLL所在的文件夹添加到程序集搜索路径?我不允许更改应用程序的配置文件.

.net search assemblies path

120
推荐指数
8
解决办法
9万
查看次数

动态加载类型的 SerializationException

由于我之前的问题(接口的 XML 序列化),我遇到了另一个问题......

我有一个从数据库导出数据的应用程序。导出过程由实现用于调用的公共接口的不同具体类实现。

具体的实现是作为插件 (DLL) 加载的,所以我不会在我的代码中直接引用它们。

我需要将这些具体类的实例作为字节数组序列化到我的数据库中,但是现在当我尝试从字节数组中反序列化它们时,我获得了一个 SerializationException: Unable to find assembly …

我想它是因为我在运行时加载了带有接口的具体实现的 dll ......

我该如何解决?

注意 我使用此代码反序列化对象:

    public static object DeSerialize(byte[] arrayToDeSerialize)
    {
        object serializedObject;
        using (MemoryStream stream = new MemoryStream(arrayToDeSerialize))
        {
            //Creating binary formatter to De-Serialize string.
            BinaryFormatter formatter = new BinaryFormatter();

            //De-Serializing.
            serializedObject = formatter.Deserialize(stream);
        }
        return serializedObject;
    }
Run Code Online (Sandbox Code Playgroud)

.net c# dll serialization dynamic

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

标签 统计

.net ×2

assemblies ×1

c# ×1

dll ×1

dynamic ×1

path ×1

search ×1

serialization ×1