最近碰到一个visual studio项目多级引用不拷贝dll的问题,花了很久查了很多资料,特此记录
A项目引用B项目, B项目引用C项目,C项目引用ef及oracle.ef
using Oracle.ManagedDataAccess;
using Oracle.ManagedDataAccess.EntityFramework;
//由于ef的特殊性,Oracle.ManagedDataAccess及Oracle.ManagedDataAccess.EntityFramework两个DLL是在web.config中配置的
//这种情况下,编译A项目将不会拷贝C项目中的以上两个DLL
//为解决这个问题,添加以下特殊方法,仅为显式使用以上两个DLL,没有业务逻辑。
private void DummyCodeToCopyOracleDLLs()
{
var ClientDummy = Oracle.ManagedDataAccess.Client.OracleDBAPrivilege.None;
var Instance = Oracle.ManagedDataAccess.EntityFramework.EFOracleProviderServices.Instance;
}