互软研发团队

Talk is cheap. Show me the code.

BUA .NET客户端如何动态修改上下文的应用系统参数(如:应用代号)

出于安全角度的考虑,一般情况下使用BUA .NET客户端是无法修改上下文的应用系统参数的,这些参数在Web.config文件的BUAClient配置节进行修改。如果你想要访问另一个应用系统的权限、角色等信息。你需要做以下两件事情:

1、具有被访问应用系统的密码(ApplicationPassword)。

2、通过代码修改BUA客户端的运行时配置,参考代码如下:

// 复制一份运行时配置用于动态修改完成以后恢复回去
var oldConfig = RuntimeConfig.Instance.Clone();
var config = RuntimeConfig.Instance;
config.ApplicationCode = "xxx";
config.ApplicationPassword = "xxx";
// 调用BUA客户端提供的接口
......
config.ApplicationCode = oldConfig.ApplicationCode;
config.ApplicationPassword = oldConfig.ApplicationPassword;

如何解决.NET程序集强签名下版本依赖导致的错误

有两个dll需要在一个项目内使用,但它们分别都使用了Json.NET的不同版本。一个dll依赖版本6.0,另一个dll依赖版本10.0。运行的时候会出现一方依赖的dll版本不存在。这种情况下要解决这个冲突,请参考以下解决方案:

1、使用更高版本的那个

2、在应用程序配置文件,新增<runtime>配置节,并配置依赖程序集版本重定向。以Json.NET为例,参考如下:

<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json"
culture="neutral"
publicKeyToken="30ad4fe6b2a6aeed"/>
<bindingRedirect oldVersion="0.0.0.0-10.0.0.0"
newVersion="10.0.0.0"/>
</dependentAssembly>

以上的方法有一个前提就是这个dll,它的版本之间程序集签名没有发生过修改

如何启用开发框架日志输出

Beyondbit Framework使用log4net记录日志,如果想要查看日志输出可以创建一个名称为"log4net.config"的配置文件,将它放在应用系统的根目录。详细的配置信息可以参考:http://logging.apache.org/log4net/release/manual/configuration.html

附件是一个简单的示例,它会将错误级别的日志写入到当前目录下名为log-file.txt的文件里面。

log4net.config (693B)