Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SAP Sybase SQL Anywhere 16.0 (中文) » MobiLink - 服务器管理 » MobiLink 服务器 API » 使用 .NET 同步脚本 » .NET 同步逻辑

 

调试 .NET 同步逻辑

可使用以下过程通过 Visual Studio 调试 .NET 脚本。

前提条件

执行此任务没有前提条件。

 任务
  1. 启动 Visual Studio。

  2. 选择 [Tools] » [Attach to Process]。

  3. 在 [Available Processes] 控制中,选择 mlsrv16.exe,然后按 [Attach]。

  4. 设置断点。

  5. 启动同步。

结果

脚本可调试。

可使用以下过程通过 Visual Studio 调试 .NET 脚本。

前提条件

执行此任务没有前提条件。

 调试 .NET 脚本
  1. 在打开调试信息的情况下使用以下方法之一编译代码:

    • 在 csc 命令行上,设置 /debug+ 选项。

    • 使用 Microsoft Visual Studio 设置来设置调试输出。

      • 单击 [Build] » [Configuration Manager]。

        在 [Active Solution Configuration] 列表中,选择 [Debug]。

      • 构建您的程序集。

  2. 关闭包含您源文件的 Visual Studio 运行实例。

  3. 在这一步,启动了一个新的 Visual Studio 实例来调试 MobiLink 服务器和 .NET 同步脚本。使用命令行选项启动 Visual Studio 来调试 MobiLink 服务器。

    • 在命令提示符下,导航到安装 Visual Studio 的 Common7\IDE 子目录。

    • 使用 /debugexe 选项启动 devenv (Visual Studio IDE)。

      例如,可运行以下命令来调试 MobiLink 服务器。请记住要指定 mlsrv16 选项,其中包括连接字符串和用于装载 .NET 程序集的选项。

      对于 32 位 Windows 环境:

      devenv /debugexe %sqlany16%\bin32\mlsrv16.exe -c ...

      对于 64 位 Windows 环境:

      devenv /debugexe %sqlany16%\bin64\mlsrv16.exe -c ...

      Visual Studio 启动,然后 mlsrv16.exe 会出现在 [Solution Explorer] 窗口中。

  4. 设置 Microsoft Visual Studio 以调试 .NET 代码:

    • 在 Visual Studio 的 [Solution Explorer] 窗口中,右击 [mlsrv16.exe] 并选择 [Properties]。

    • 将 [Debugger Type] 由 [Auto] 更改为 [Mixed] 或 [Managed Only],以确保 Visual Studio 只调试您的 .NET 同步脚本。在 Visual Studio 2010 中,将 [Debugger Type] 更改为 [Managed(v2.0, v1.1, v1.0)] 或 [Managed v4.0],具体取决于 MobiLink 服务器所使用的程序集版本。

    注意

    要使用 v4.0 程序集,必须在装载 MobiLink 服务器时显式包含 -clrVersion 选项。 有关 -clrVersion 选项的详细信息,请参见-sl dnet mlsrv16 选项

  5. 打开关联的 .NET 源文件并设置断点。

    在 mlsrv16 解决方案中分别打开源文件。不要打开原始解决方案或项目文件。

  6. 从 [Debug] 菜单或按 F5 键启动 MobiLink。

    如果出现提示,保存 mlsrv16.sln

    如果出现 [No Symbolic Information] 窗口,请务必单击 [OK] 进行调试。您正在调试的是 MobiLink 调用的托管 .NET 同步脚本,而不是 MobiLink 服务器本身。

  7. 执行一个使 MobiLink 执行含断点的代码的同步。

结果

脚本可调试。