有一个WPF用户控件库和两个(或更多)用户控件.我需要在两个用户控件中使用相同的样式.我该如何分享这种风格?例如:
这是风格:
<Style x:Key="customLabelStyle" TargetType="Label">
...
</Style>
Run Code Online (Sandbox Code Playgroud)
用户控制A:
<UserControl x:Class="Edu.Wpf.Example.UserControlA"
...xmlns stuff... >
<Grid>
... some xaml markup...
<Label Style="{StaticResource customLabelStyle}"/>
</Grid>
</UserControl>
Run Code Online (Sandbox Code Playgroud)
UserControl B:
<UserControl x:Class="Edu.Wpf.Example.UserControlB"
...xmlns stuff... >
<Grid>
... some another xaml markup...
<Label Style="{StaticResource customLabelStyle}"/>
</Grid>
</UserControl>
Run Code Online (Sandbox Code Playgroud)
那么如何在不涉及应用程序app.xaml资源字典的情况下在库中的用户控件之间共享此样式?
UPDATE
我可以将Themes\Generic.xaml添加到我的库中并在那里定义样式.但在这种情况下,我必须使用ComponentResourceKey作为样式的关键.对?它很长而且不是很方便的表达......
在Slick 2.1中,我有以下代码从文件执行sql-query:
def fetchResult[T](sql: String)(implicit getResult: GetResult[T]): List[T] = {
val query = Q.queryNA[T](sql)
try {
Database.forDataSource(DB.getDataSource())
.withSession { implicit session => query.list }
}
catch {
case e: Throwable =>
throw new RunSqlException(s"Query $name execution error", e)
}
}
Run Code Online (Sandbox Code Playgroud)
在Slick 3.0.0中,您使用dbConfig.db.run方法来执行DBIOAction并获得结果的未来.但是我找不到将Q.queryNA(也就是StaticQuery[Unit, R]
)的结果转换成的方法DBIOAction
.这样的方式存在吗?
我现在结束了不赞成的电话.帮助我变得更好!
def fetchResult[T](sql: String)(implicit getResult: GetResult[T]): Future[List[T]] = Future {
val query = Q.queryNA[T](sql)
try {
this.dbConfig.db.withSession { implicit session => query.list }
}
catch {
case e: Throwable =>
throw new RunSqlException(s"Query …
Run Code Online (Sandbox Code Playgroud) 我可以从gradle.properties
with读取val myProperty by settings
,这很好!但是如果属性名称包含点呢?考虑下一个gradle.properties
文件:
kotlin.incremental=true
kotlin.incremental.js=true
kotlin.incremental.multiplatform=true
Run Code Online (Sandbox Code Playgroud)
如何在settings.gradle.kts
脚本中读取上面的这些属性?
故事
我有运行产生 stdout/stderr 输出的 docker 容器的 ECS 任务。这些任务配置为使用 awslogs 驱动程序将输出发送到 CloudWatch。CW 日志组上有一个订阅过滤器,订阅者是将日志移动到 S3 存储桶的 Firehose 流。该流附加了一个 AWS Lambda 以批量处理 CW 事件。lambda 解析日志事件并将解析的数据发送到另一个系统进行索引。我想保留解析数据的顺序,但不知道如何实现。
我的第一种方法是将 CW 事件时间戳值包含到解析的数据中,然后在目标系统中对其进行排序。事实证明这是不够的,因为可能有许多具有相同时间戳的后续 CW 事件(在同一日志流中) - CW 时间戳值默认基于毫秒。
在 lambda 中处理批次的 CW 事件期间,它们在批次中的顺序是已知的,我的第二种方法是用订单号丰富解析数据中的时间戳 - 因此具有相同时间戳的事件将具有不同的订单号。这个解决方案很快就暴露了它的弱点 - 可能有多个处理 lambda 的实例在来自 Firehose 流的不同日志事件批次上并行工作。流的一个分片 - 处理 lambda 的一个实例。因此,不可能有一个简单的计数器来保存多个并行执行的 lambda 之间的日志事件顺序。
我发现的下一件事是 CW 日志事件 ID 是唯一的、基于数字的和递增的值。我还没有找到对这一事实的任何确认,所以这只是对 AWS Web 控制台中 CW UI 行为的观察。CW API 甚至使用 ID 作为后向和前向令牌,因此 ID 应该是可比较的实体。
问题
amazon-web-services amazon-cloudwatch aws-lambda amazon-kinesis-firehose
我为它创建了一个注释和一个Groovy AST转换.此注释仅适用于类.转换在SEMANTIC_ANALISIS阶段工作,应该创建一个新类.我需要的是从ClassNode获取带注释的Groovy类的具体类型(java.lang.Class).但是,如果我尝试调用classNode.getTypeClass()
转换的访问方法,则在编译时出现异常"在设置类型类之前调用MyEntity获取ClassNode#getTypeClass".获取此类信息的正确方法是什么?