NLog允许我用来SplitGroup将我的消息记录到多个目标.我想使用此功能一次将每条消息记录到常见的,特定于用户和日期的日志中:
<variable name="commonLog" value="${logDir}\Common.log" />
<variable name="username" value="${identity:fSNormalize=true:authType=false:isAuthenticated=false}" />
<variable name="userLog" value="${logDir}\ByUser\${username}.log" />
<variable name="dateLog" value="${logDir}\ByDate\${shortdate}.log" />
<target name="logFiles" xsi:type="SplitGroup">
<target xsi:type="File" fileName="${commonLog}" layout="${myLayout}" />
<target xsi:type="File" fileName="${userLog}" layout="${myLayout}" />
<target xsi:type="File" fileName="${dateLog}" layout="${myLayout}" />
</target>
Run Code Online (Sandbox Code Playgroud)
这很好,但我也想对不同级别的严重性使用不同的布局.例如,errorLayout将包含异常信息和插入[!]标记,以便稍后可以突出显示BareTail等日志查看器中的错误:
<variable name="stamp" value="${date} ${username} ${logger}" />
<variable name="debugLayout" value="${stamp} ... ${message}" />
<variable name="infoLayout" value="${stamp} [i] ${message}" />
<variable name="warnLayout" value="${stamp} [!] ${message}" />
<variable name="errorLayout"
value="${warnLayout}${newline}${pad:padding=10:inner=${exception:format=ToString}}" />
<!-- …Run Code Online (Sandbox Code Playgroud) 我正在寻找一种干净的方法来获取一个#以给定字符串开头的单词集(列表,数组,等等).
在C#中,我会写
var hashtags = input
.Split (' ')
.Where (s => s[0] == '#')
.Select (s => s.Substring (1))
.Distinct ();
Run Code Online (Sandbox Code Playgroud)
在Python中执行此操作的相对优雅的代码是什么?
编辑
样本输入:"Hey guys! #stackoverflow really #rocks #rocks #announcement"
预期输出:["stackoverflow", "rocks", "announcement"]
在我的应用程序中,我有一个用于输入用户名的文本框.如果文本为空,我想在灰色的同一文本框中显示"在此处输入用户名".文本框中是否有这样的属性.就像在Firefox浏览器中一样,如果URL字段为空,它将以灰色显示"转到网站"
谢谢
我需要"覆盖"一些基类的嵌套类成员,同时保持其余的完整.
这就是我做的:
class InternGenericForm(ModelForm):
class Meta:
model = Intern
exclude = ('last_achievement', 'program',)
widgets = {
'name': TextInput(attrs={'placeholder': '??? ? ???????' }),
}
class InternApplicationForm(InternGenericForm):
class Meta:
# Boilerplate code that violates DRY
model = InternGenericForm.Meta.model
exclude = ('is_active',) + InternGenericForm.Meta.exclude
widgets = InternGenericForm.Meta.widgets
Run Code Online (Sandbox Code Playgroud)
其实,我想InternApplicationForm.Meta是完全相同一样InternGenericForm.Meta,不同之处在于它的exclude元组应该包含一个以上的项目.
在Python中这样做的更美妙的方法是什么?
我希望我不必编写样板代码model = InternGenericForm.Meta.model,因为它也容易出错.
我总是假设<var> += 1并且<var> = <var> + 1在JS中具有相同的语义.
现在,这个CoffeeScript代码在应用于全局变量时会编译为不同的JavaScript e:
a: ->
e = e + 1
b: ->
e += 1
Run Code Online (Sandbox Code Playgroud)
请注意,b使用全局变量,而a定义局部变量:
({
a: function() {
var e;
return e = e + 1;
},
b: function() {
return e += 1;
}
});
Run Code Online (Sandbox Code Playgroud)
亲自尝试一下.
这是一个错误还是有这样的原因?
在与服务器API交谈时,我大量使用任务并行库.
我想显示iOS网络指示器,而这些任务当前正在运行.
我该怎么做?
在以前的MonoTouch版本中,我曾经这样做忽略了未观察到的异常:
TaskScheduler.UnobservedTaskException += delegate(object sender, UnobservedTaskExceptionEventArgs e) {
Console.WriteLine (e);
e.SetObserved ();
};
Run Code Online (Sandbox Code Playgroud)
这是否是一个好的做法是有争议的,但我想知道与Xamarin.iOS 6.4中正式支持的async/awaitkeywords 一起实现相同的效果.
这是我用于测试的代码:
async void OnClick (object sender, EventArgs e)
{
await Task.Run (() => { throw new Exception (); });
}
Run Code Online (Sandbox Code Playgroud)
当我运行它时,调试器暂停AsyncVoidMethodBuilder:

我读到.NET 4.5据说改变了行为,因此未观察到的异常不会使应用程序崩溃 - 但是如果将异常发布到UIKit同步上下文中我无法处理它们,这无济于事.
有没有办法忽略awaitMonoTouch中未观察到的异常?
我对Swift教程感到有点困惑.
是否nil只是一个方便快捷Optional<T>.None?
是否存在从一个到另一个的隐式转换?
几点意见:
Optional<String>.None == nilnil 字面似乎有一个 NilType如果这是一个隐式转换,我可以定义自己的"接受"nil的类型,或者在Optional某种程度上是特殊的吗?我不认为定义自定义convertible-to-nil类型是个好主意 - 我只是想了解类型系统在这种情况下的工作原理.
我正在将一个现有的应用程序移植到Flux,我对一个主题感到有些困惑.假设我有几个返回两级或三级嵌套对象的API端点.
例如,GET /articles可以返回架构的JSON响应
articles: article*
article: {
author: user,
likers: user*
primary_collection: collection?
collections: collection*
}
collection: {
curator: user
}
Run Code Online (Sandbox Code Playgroud)
如您所见,不同级别的嵌套有各种各样的用户:
articles[i].authorarticles[i].likers[i]articles[i].primaryCollection.curatorarticles[i].collections[i].curator如果我想在UserStore任何时候获取文章时使用新数据进行更新,我必须编写一个怪异的方法来检查文章API响应中的所有嵌套实体.此外,会有很多重复,因为还有其他API端点具有不同的模式,有时文章嵌入在用户内(例如GET /user/published).
Flux商店是否有更清晰的方法从所有API响应中提取嵌套实体?
测试此功能的最佳方法是什么
export function receivingItems() {
return (dispatch, getState) => {
axios.get('/api/items')
.then(function(response) {
dispatch(receivedItems(response.data));
});
};
}
Run Code Online (Sandbox Code Playgroud)
这是我现在拥有的
describe('Items Action Creator', () => {
it('should create a receiving items function', () => {
expect(receivingItems()).to.be.a.function;
});
});
Run Code Online (Sandbox Code Playgroud) c# ×2
javascript ×2
python ×2
xamarin.ios ×2
architecture ×1
async-await ×1
c#-5.0 ×1
class ×1
coffeescript ×1
compiler-bug ×1
cqrs ×1
flux ×1
hashtag ×1
inheritance ×1
ios ×1
json ×1
nested ×1
nested-class ×1
nlog ×1
null ×1
redundancy ×1
redux ×1
redux-thunk ×1
string ×1
swift ×1
syntax ×1
unit-testing ×1
vb.net ×1
xamarin ×1