首页 文章

Worker角色没有创建模型对象?

提问于
浏览
1

我已经把我的工作角色......工作了 . 现在我还有一个小问题 .

我的worker角色通过Entity Framework访问SQL Azure . 我想从我的数据库中创建一个填充的电子邮件对象列表,然后发送这些电子邮件 . 代码在本地工作正常,但在 Cloud 中部署时会抛出异常 .

致Clarfiy:工作者角色处于“就绪”状态,当它到达有问题的代码片段时,它会导致激活并进入catch块并继续执行代码 .

只有当我尝试创建我的电子邮件对象时:

例如 .

实体实体=新实体(); //实体是我的数据库模型的名称

列出emailList = entities.Email.where(x => x.sent == 0).toList(); //创建我的实体列表

我一直在查看Azure部署中的intellitrace日志(在vs2010中),我注意到我的工作者角色时遇到“System.Reflection.ReflectionTypeLoadException:无法加载一个或多个请求的类型”尝试使用上面的代码填充列表 . 查看调用堆栈,它指向电子邮件模型 .

当我使用相同的代码部署时,我的webrole工作正常 . 此外,我在我的工作者角色中包含了对我的Web角色的参考,并且它将复制本地属性设置为true .

有任何想法吗!?

1 回答

  • 1

    Azure的常见问题之一是工作者角色和/或Web角色中的 deployment does not copy some dlls unless they are marked with "CopyLocal" . Azure OS的GAC中缺少的所有Dll都应该存在 .

    Article with more details

    我自己曾经被这几次咬过 .

相关问题