【问题标题】:How to solve Error to Deploy C# Project using Visual Studio to AX 2012?如何解决使用 Visual Studio 将 C# 项目部署到 AX 2012 的错误?
【发布时间】:2020-06-29 02:43:23
【问题描述】:

我想通过 Visual Studio 部署一个 C# 项目,但我收到此错误:

错误 1 ​​一些报表的数据集引用了来自类 CustAgingReport_report_Name 的数据方法。找不到业务逻辑程序集 (CustAgingReport_Report_name.BusinessLogic)。重建业务逻辑项目。 \SSRS Reports\Reports\CustAgingReport

错误 2 命名空间“Microsoft.Dynamics.AX”中不存在类型或命名空间名称“Application”(您是否缺少程序集引用?)

拜托,你能帮帮我吗?你有什么建议吗?

谢谢

【问题讨论】:

    标签: c# axapta x++ dynamics-ax-2012


    【解决方案1】:

    如果您正在开发 AX 报告,在部署时可能会很麻烦,而且很多时候不是您的代码而是环境。

    核心错误可能是准确的,但原因是麻烦。编译后的业务逻辑程序集应位于报表服务器上(默认路径)C:\Program Files\Microsoft SQL Server\MSRS13.MSSQLSERVER\Reporting Services\ReportServer\bin\CustAgingReport.BusinessLogic.dll

    我假设由于错误无法成功编译和部署您的错误。

    但此错误可能会产生误导,因为我已经看到真正的原因是由于具有多个特定对象层,我建议您检查与报告关联的每个主要对象(Dynamics Project、C# Business Logic Project ,相关的 C# 业务逻辑项目 [i.e. SrsDrillThroughCommon])首先检查每个对象存在于哪些层。

    如果 Visual Studio 位于错误的层,在编译过程中会发生什么,它无法看到存在于另一层中的关联代码,从而导致依赖对象的编译失败。拥有一个包含不同层对象的报告不一定是问题,它只是确保您在编译时单脚站立并旋转正确的方向。

    首先,在 AX 中仔细检查对象,然后尝试使用指向所有对象所在层的 .axc 文件打开 Visual Studio。要执行此操作,请参阅 https://docs.microsoft.com/en-us/dynamicsax-2012/developer/how-to-open-visual-studio-with-a-specific-configuration?redirectedfrom=MSDN。并确保重新编译等,看看是否单独修复它。

    第二个思路是,直接尝试编译业务逻辑程序集(根据报错)。

    例如,在 AX 中,当您打开 Dynamics AX Model Project 时,它并不总是加载 C# Business Logic Project

    您可以看到销售发票报表在 AOT 中有这两个项目对象:

    当您右键单击 Dynamics AX Model Project 并单击 Edit 时,它会在您的解决方案资源管理器中启动 Visual Studio:

    在左侧的 VS 中,在 Application Explorer(如果缺少,请查看>应用程序资源管理器)下,找到关联的 C# Business Logic Project 并双击它以将其添加到您的项目中。在我的例子中是SalesInvoiceReport.BusinessLogic

    在我这样做之后,它还会自动添加SRSDrillThroughCommon,因为这也是一个依赖项。 [侧边栏:SRSDrillThroughCommon 用于那些蓝色超链接以启动相关的 AX 表单]

    确保您在正确的层中启动了 Visual Studio,尝试重新编译所有内容以查看是否可以解决问题。

    最后,我最后要说的是因为这只是我碰巧想到的最后一件事......我稍后可能会想出其他东西,尝试通过找到它直接从 AX 进行完整的 AX 编译和部署在 AOT。有关更多信息,请参阅https://docs.microsoft.com/en-us/dynamicsax-2012/appuser-itpro/how-to-deploy-reports-to-a-report-server

    我有一份报告如此复杂和麻烦,连微软都无法解决。我怀疑原因是没有人遇到过的错误,因为我正在做一些非常不寻常的开发。我最终通过将完全相同的项目内容的 XPO 导入 AOT 然后部署来解决它。不知何故,它设法让它工作。这个错误不是一个有趣的错误。祝你好运!

    【讨论】:

    • 感谢@Alex Kwinty,好主意。我能够检查所有的东西。
    猜你喜欢
    • 2015-05-27
    • 1970-01-01
    • 2015-08-04
    • 2021-01-27
    • 2015-04-16
    • 1970-01-01
    • 1970-01-01
    • 2018-08-01
    • 1970-01-01
    相关资源
    最近更新 更多