dotnetcore / dotnetcore/FreeSql

懒加载类型编译错误,但有可能是微软的bug

Open
#1,876 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
C#
Stars
4.4k
Forks
910
PR merge metrics
No merged PRs in 30d

Description

#### 问题描述及重现代码:

FreeSql懒加载类型编译错误。说**_没有找到FreeSql.dll的元数据_**

该报错来自.net framework。.net standard没有问题。

引入FreeSql.Extensions.LazyLoding进行调试如下:

![image](https://github.com/user-attachments/assets/034dc02c-ded6-4918-a3f8-21c5d87f9422)
进入到代理类型编译源码。

可以获取到`IFreeSql`类型,以及所对应的程序集文件`FreeSql.dll`.
由属性`CodeBase`看出获取到的程序集是我项目下引用的程序集,是没有问题的。
但是调用`Assembly.Location`的属性就返回了C盘.net framework的一个缓存目录下。

![image](https://github.com/user-attachments/assets/92363ef8-8fb3-4166-a55d-9bc79455ad37)

所以后续就引发异常,说没有找到对应的元数据。
![image](https://github.com/user-attachments/assets/fac4d81f-8c51-40e0-9ab3-6843c7bbf305)

感觉像是`Assembly.Location`这个属性返回的数据有问题。不知道为什么返回的是系统net framework的临时文件目录而不是dll所在的真实目录

#### 数据库版本
sql server 2014

#### 安装的Nuget包
![image](https://github.com/user-attachments/assets/d8df73c5-7e6a-44ef-8877-ca06385484b7)
freesql 3.2.689系列

#### .net framework/. net core? 及具体版本
.net framework 4.8

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.