我有一个文档,在其中创建了许多流程图,这些流程图共享其项目的样式和颜色的共同图例。例如:
graph TB
classDef client fill:#D5E8D4,stroke:#82B366,color:#000000;
classDef utility fill:#E1D5E7,stroke:#9673A6,color:#000000;
classDef resource fill:#DAE8FC,stroke:#6C8EBF,color:#000000,stroke-dasharray: 3 3;
<!-- and more -->
Run Code Online (Sandbox Code Playgroud)
现在,我需要将这些添加classDef
到我制作的每个流程图中。复制并粘贴它们并不是世界末日,但是当您有二十个流程图以使它们全部使用相同的样式定义时,这并不是最好的。
有没有什么方法可以指定classDef
在同一类型的所有图表之间共享的每个文档的 s 或样式集?
我需要维护一个唯一键控的数据库对象的缓存(按整数).查询提供了一个IEnumerable<MyEntity>
(MyEntity
使用int
主键)实例和结果,我想Dictionary<int, MyEntity>
尽可能快地初始化一个实例,因为这个查询可以返回几十万行.
初始化一个实例的最高效的方法Dictionary<int, MyEntity>
是IEnumerable<MyEntity>
什么?
简而言之,我想知道是否有更高效的方法来执行此操作:
IEnumerable<MyEntity> entities = DoSomeQuery();
var cache = new Dictionary<int, MyEntity>();
foreach (var entity in entities)
cache.Add(entity.Id, entity);
//or...
cache = entities.ToDictionary(e => e.Id);
Run Code Online (Sandbox Code Playgroud)
当然,查询具有最大的潜在性能影响,但重要的是,无论我在哪个用例中,我都要花几毫秒.
编辑:
值得注意的是,.ToDictionary<TKey, TElement>
字面意思是像第一个例子一样运行一个foreach循环,因此可以假设如果不是稍微差一点,则perf将完全相同.也许这就是我的答案.
我和我的朋友已经被黑客攻击了几个小时,但我们无法弄清楚它有什么问题.它本质上是通过数组运行的,如果按钮应该被锁定或可交互,如果它是null,它将是可交互的.通过使用播放器prefs,这些设置应该在应用程序的每个会话中持续存在.
这是代码:
for (i = 0; i < buttons.Length; i = i + 1) {
if (PlayerPrefs.GetInt("button" + string.Format i) == null) {
PlayerPrefs.SetInt("button" + string.Format i, 1);
}
if (PlayerPrefs.GetInt("button" + string.Format i) == 1) {
button.interactable = true;
} else {
button.interactable = false;
}
}
Run Code Online (Sandbox Code Playgroud)
目前Unity统一显示5个错误: