我意识到在Microsoft .NET Framework中,void返回类型是一种结构.为什么?
...
public void TestMethod()
{
}
...
Run Code Online (Sandbox Code Playgroud) 我使用focusable属性强制SVG元素在HTML文档中获得焦点.
我需要通过TAB键在SVG标签中导航SVG元素.如文件中所述(http://www.w3.org/TR/SVGTiny12/interact.html#focusable-attr)
但我不能这样做.我已将focusable属性设置为true,并将tabindex每个元素设置为0.
这是我的代码:
<div style="border: solid yellow 2px;" tabindex="0">
<svg tabindex="0" width="900px" height="500px" viewBox="0 0 95 50" style="border: solid red 1px;" focusable="true"
xmlns="http://www.w3.org/2000/svg">
<g data-Name="group" tabindex="0" stroke="green" fill="white" stroke-width="5" data-tabindex="0" style="border: solid green 1px;" focusable="true">
<circle tabindex="0" cx="20" cy="25" r="5" focusable="true" data-Name="shape 1" data-tabindex="0" />
<circle tabindex="0" cx="40" cy="25" r="5" focusable="true" data-Name="shape 2" data-tabindex="0" />
<circle tabindex="0" cx="60" cy="25" r="5" focusable="true" data-Name="shape 3" data-tabindex="0" />
<circle tabindex="0" cx="80" cy="25" …Run Code Online (Sandbox Code Playgroud) 我需要从文档的数组子文档更新一个元素的字段.
MongoDB有$ position操作符来执行此操作.但是在MongoDB C#驱动程序版本2中,似乎没有对此运算符的支持.
我怎样才能做到这一点?
文件:
{ "_id" : 1, "grades" : [ 80, 85, 90 ] }
{ "_id" : 2, "grades" : [ 88, 90, 92 ] }
{ "_id" : 3, "grades" : [ 85, 100, 90 ] }
Run Code Online (Sandbox Code Playgroud)
预期查询:
db.students.update(
{ _id: 1, grades: 80 },
{ $set: { "grades.$" : 82 } }
)
Run Code Online (Sandbox Code Playgroud) 考虑以下两个从接口实现一堆属性的类:
接口代码:
public interface ISample
{
int x;
string y;
}
Run Code Online (Sandbox Code Playgroud)
第1类:
public class SampleA: ISample
{
public int x { get; set; }
public string y { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
第2类:
public class SampleB: ISample
{
public int x { get; set; }
[Decorated]
public string y { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
这里唯一的区别是SampleB有一个属性装饰的属性.
这是高度简化的,并且所讨论的类具有更多属性,但主要区别是一个类具有一些用属性装饰的属性.
将来会有一些情况会引入更多类来实现ISample接口,并且觉得这些类可能应该从抽象类或其他东西继承一些公共代码.
重构此代码的好方法是什么?