如何%APPDATA%使用app.config文件登录特殊文件夹(例如)?
我可以通过编程方式完成,但我需要能够使用app.config文件进行配置.我看过一篇关于使用的文章.%envFolderPath它在最新发布的版本中没有,但仅限于最新的代码.
下面是我以编程方式将日志设置为特殊文件夹的代码.
public void ExampleLog
{
XmlConfigurator.Configure();
var fileName = GetFileName();
var appender = new log4net.Appender.RollingFileAppender
{
Layout = new log4net.Layout.PatternLayout("%d - %m%n"),
File = fileName,
MaxSizeRollBackups = 10,
MaximumFileSize = "100MB",
AppendToFile = true,
Threshold = Level.Debug
};
appender.ActivateOptions();
BasicConfigurator.Configure(appender);
}
private static string GetFileName()
{
const string subPath = "MySubFolder";
var path = String.Format(@"{0}\{1}", Environment.GetFolderPath (Environment.SpecialFolder.CommonApplicationData), subPath);
const string logName = "Log.txt";
return Path.Combine(path, logName);
}
Run Code Online (Sandbox Code Playgroud) 为什么我的T4模板有时会在输出文件中附加一个数字,有时不会?例如,在一种情况下,我可能有一个名为的模板文件Foo.tt,我将得到一个输出文件Foo.cs.在其他情况下,我将获得一个输出文件Foo1.cs.在每种情况下,都没有其他 Foo.cs文件可能导致它附加一个数字.换句话说,它绝对不是任何明显的文件名冲突的结果.
我是一个深度肛门保持开发者,所以我很想知道如何摆脱那个无用的数字后缀.
想象一下,在异构网络环境中,您在许多主机上拥有许多群集服务器,这样服务器之间的连接可能具有极大不同的延迟和带宽.您希望通过在服务器之间传输数据来构建服务器之间的连接映射.
当然,随着网络拓扑的变化,这张地图可能会随着时间的推移而变得陈旧 - 但是现在让我们忽略这些复杂性并假设网络是相对静态的.
鉴于此主机图中节点之间的延迟,计算带宽是一个相对简单的计时练习.然而,我在延迟方面遇到了更多困难.为了获得往返时间,从本地主机到远程主机的定时返回ping是一个简单的问题 - 本地主机上都会发生定时事件(启动,停止).
如果我想在两个方向上的延迟不相等的假设下单向一次怎么办?假设各个主机上的时钟没有精确同步(至少它们的误差与所涉及的延迟具有相同的幅度) - 我如何计算单向延迟?
在一个相关的问题中 - 在实践中常见的是这种不对称延迟(其中链接方向比另一方更快)吗?出于什么原因/硬件配置?当然我知道非对称带宽情况,特别是在最后一英里的消费者链接上,如DSL和Cable,但我对延迟不太确定.
补充:在考虑下面的评论后,问题的第二部分可能在服务器故障上更好.
我有以下界面:
public interface ILogger
{
void Debug(string message, params object[] values);
void Info(string message, params object[] values);
void Warn(string message, params object[] values);
void Error(string message, params object[] values);
void Fatal(string message, params object[] values);
}
Run Code Online (Sandbox Code Playgroud)
以及以下实施:
public class Log4netLogger : ILogger
{
private ILog _log;
public Log4netLogger(Type type)
{
_log = LogManager.GetLogger(type);
}
public void Debug(string message, params object[] values)
{
_log.DebugFormat(message, values);
}
// other logging methods here...
}
Run Code Online (Sandbox Code Playgroud)
我的想法是使用structuremap使用执行日志记录的类的Type来实例化Log4netLogger类.但是,我不能为我的生活弄清楚如何将调用类的类型传递给structuremap,以便它可以传递给日志记录实现的构造函数.关于如何做到这一点(或更好的方式)的任何建议都将是最受欢迎的.
我有一个只包含静态成员变量和静态方法的类.从本质上讲,它是一个通用的实用类.
类只包含静态成员变量和静态方法是不好的做法吗?
我正在阅读以最有效的方式实现客户端 - 服务器的方法,我碰到了这个链接:http://msdn.microsoft.com/en-us/library/ms740550( VS.85) .aspx
说:
"并发连接不应超过两个,除非在特殊用途的应用程序中.超过两个并发连接会导致资源浪费.一个好的规则是最多有四个短期连接,或每个目标两个持久连接"
我不能完全理解他们的意思2 ...他们的意思是持久的?
假设我有一个服务器,它听取了许多客户,他们假设要对服务器做一些工作,我怎样才能保持2个连接打开?无论如何,实施它的最佳方法是什么?我读了一些关于完成端口的内容,但是找不到很好的代码示例,或者至少是一个不错的解释.
谢谢
有谁知道如何通过类方法重置实例变量.像这样的东西:
class someClass
{
var $var1 = '';
var $var2 = TRUE;
function someMethod()
{
[...]
// this method will alter the class variables
}
function reset()
{
// is it possible to reset all class variables from here?
}
}
$test = new someClass();
$test->someMethod();
echo $test->var1;
$test->reset();
$test->someMethod();
Run Code Online (Sandbox Code Playgroud)
我知道我可以简单地执行$ test2 = new SomeClass()但我特别想找到一种通过方法重置实例(及其变量)的方法.
这有可能吗???
我正在使用Apple网站的Reachability示例代码.我已将Reachability.h和Reachability.m文件添加到我的项目中,我还添加了SystemConfiguration.framework.将#import"Reachability.h"添加到我的视图控制器.m文件中,并在视图控制器.h文件中声明了可达性变量.在我开始使用Reachability实例之前,所有内容都会编译而没有错误.
我得到ReachableViaWiFiNetwork和ReachableViaCarrierDataNetwork未声明的错误.
为什么会这样?
reachability = [Reachability reachabilityForInternetConnection];
NetworkStatus internetStatus = [reachability currentReachabilityStatus];
if ((internetStatus != ReachableViaWiFiNetwork) && (internetStatus != ReachableViaCarrierDataNetwork))
{
}
Run Code Online (Sandbox Code Playgroud) benson@cn0:/u1/benson/corpora/he/walla$ svn rm "_12_@@_live.xml"
svn: '_12_@' does not exist
Run Code Online (Sandbox Code Playgroud)
带有全名的文件在那里,我是从svn co得到的.现在我正试图摆脱它.
有谁知道如何说服它不要停在第一个@?
networking ×2
tcp ×2
app-config ×1
c++ ×1
class ×1
connection ×1
delphi ×1
ide ×1
ios ×1
latency ×1
log4net ×1
oop ×1
php ×1
reachability ×1
static ×1
structuremap ×1
svn ×1
t4 ×1
udp ×1