我有一个带有SQL DB的Orchard站点,当我尝试访问该站点时发生以下错误:
>应用程序中的服务器错误。可以使用可用的服务和参数调用在'BodyLogic.Physicians.Services.PhysicianService'类型上找到'Orchard.Environment.AutofacUtil.DynamicProxy2.ConstructorFinderWrapper'的构造函数:无法解析参数'BodyLogic.LegacyDb.Services .Repositories.Physicians.IPhysicianRepository physicianRepository'of constructor'Void .ctor(BodyLogic.LegacyDb.Services.Repositories.Physicians.IPhysicianRepository,BodyLogic.LegacyDb.Services.DtoConverters.IDtoConverter)'。
当我从App_Data / Sites /中删除“default”文件夹并安装一个新的Orchard时,一切都运行完美,没有异常且模块没问题,但当我将连接字符串更改为再次指向SQL Server时,同样的异常再次发生。
对此事项的任何帮助都将受到高度赞赏,
问候并感谢,
亚历。
答案 0 :(得分:3)
不是SQL Server导致错误,而是数据损坏。有一个功能应该启用但不是。我打赌这是这个:BodyLogic.LegacyDb
。
您可能已为已启用的功能添加了依赖项,我是对的吗?如果是这样,那么你看到的是默认行为--Orchard不会自动启用新添加的依赖项。你需要手动完成。
功能启用/禁用状态存储在db表Settings_ShellFeatureStateRecord
中。要修复错误:
Name
等于BodyLogic.LegacyDb
和InstallState
和EnableState
值都设置为Up
完成后
App_Data/cache.dat
,