关闭用户会话 AXAPTA
Close user sessions AXAPTA
我正在制作一个使用 Dynamics AX Business Connector 连接 AX 的网站,它工作正常,但有时用户不会注销。
这是我的代码:
Microsoft.Dynamics.BusinessConnectorNet.Axapta DynAx = new Microsoft.Dynamics.BusinessConnectorNet.Axapta();
try
{
DynAx.Logon(null, null, null, null);
//Execute some methods
DynAx.Logoff();
}
catch (Exception ex)
{
DynAx.Logoff();
}
在 ax 中我可以看到登录的用户。这种情况有时会再次发生,这就是为什么我不知道可能是谁。
也许 Dispose() 方法更好?
感谢您花时间阅读本文。
Logon/logoff 对我来说是正确的,但如果你说 有时 它不会,那么原因很可能是以下之一:
- 业务连接器可能不稳定。它不是 Microsoft 的优先事项,最终被贬值了。
- 无论您的
//Execute some methods
部分发生什么,都可能锁定或阻止注销。
- 您可能需要更新内核以获取更新版本的业务连接器
在我的 AX2012R3 环境中,我可以 运行 下面的 PowerShell
代码一遍又一遍地成功。这将我指向上述原因之一。
Add-Type -Path "C:\Program Files\Microsoft Dynamics AX\BusinessConnector\Bin\Microsoft.Dynamics.BusinessConnectorNet.dll"
$ax = new-object Microsoft.Dynamics.BusinessConnectorNet.Axapta
$ax.logon($null, $null, $null, $null)
$b = $ax.CreateAxaptaRecord("userinfo")
$array = New-Object System.Collections.ArrayList
$b.ExecuteStmt("select id from %1")
while($b.found){
$array.add($b.get_field("id")) | out-null
$b.next() | out-null
}
$array | Format-Table -AutoSize
$ax.Logoff()
$ax.Dispose()
我正在制作一个使用 Dynamics AX Business Connector 连接 AX 的网站,它工作正常,但有时用户不会注销。
这是我的代码:
Microsoft.Dynamics.BusinessConnectorNet.Axapta DynAx = new Microsoft.Dynamics.BusinessConnectorNet.Axapta();
try
{
DynAx.Logon(null, null, null, null);
//Execute some methods
DynAx.Logoff();
}
catch (Exception ex)
{
DynAx.Logoff();
}
在 ax 中我可以看到登录的用户。这种情况有时会再次发生,这就是为什么我不知道可能是谁。 也许 Dispose() 方法更好?
感谢您花时间阅读本文。
Logon/logoff 对我来说是正确的,但如果你说 有时 它不会,那么原因很可能是以下之一:
- 业务连接器可能不稳定。它不是 Microsoft 的优先事项,最终被贬值了。
- 无论您的
//Execute some methods
部分发生什么,都可能锁定或阻止注销。 - 您可能需要更新内核以获取更新版本的业务连接器
在我的 AX2012R3 环境中,我可以 运行 下面的 PowerShell
代码一遍又一遍地成功。这将我指向上述原因之一。
Add-Type -Path "C:\Program Files\Microsoft Dynamics AX\BusinessConnector\Bin\Microsoft.Dynamics.BusinessConnectorNet.dll"
$ax = new-object Microsoft.Dynamics.BusinessConnectorNet.Axapta
$ax.logon($null, $null, $null, $null)
$b = $ax.CreateAxaptaRecord("userinfo")
$array = New-Object System.Collections.ArrayList
$b.ExecuteStmt("select id from %1")
while($b.found){
$array.add($b.get_field("id")) | out-null
$b.next() | out-null
}
$array | Format-Table -AutoSize
$ax.Logoff()
$ax.Dispose()