这困扰了我很多,我发现当与Intellisense(VS 2008 Pro)结合使用时,我会写出愚蠢的错误:
class Foo
{
public Foo(bool isAction)
{
this.IsAction = IsAction;
}
public bool IsAction { get; private set; }
}
Run Code Online (Sandbox Code Playgroud)
你懂了吗?我当然没有,直到IsAction从未改变,导致错误.
智能感知某种方式转换" isA<tab>"到"IsAction"对我来说,这意味着该属性Foo.IsAction是始终不管构造输入错误.太棒了
我不得不说我特别讨厌"隐含的this"(我不知道它是否有一个正式名称),我想把它关掉所以它永远不会假设它. 有没有办法做到这一点? 这也适用于调用同一类的静态方法.
或者,哪些命名约定可以避免这个小问题? 该属性必须保持"IsAction",因此它必须是构造函数参数名称的约定.奇怪的是,如果我用完全匹配的拼写命名,那么就this.IsAction = IsAction;可以正常工作.
问题不是区分大小写的语言,而是隐含的this.现在我考虑一下,这也是一个VS 2008 Pro问题而不是C#.我可以使用已经编写过的代码,this但是我不想写没有它的新代码,这意味着告诉In
Noldorin的回答让我思考.
现在我考虑一下,这也是一个VS 2008问题而不是C#.我可以使用已经没有编写的代码this(虽然如果我在那里,我会改变它)但我不想写没有它的新代码,这意味着告诉Intellisense停止这样做. 我可以告诉Intellisense将其击败吗?
我们有以下传统的2.0.7 Spring代码:
final Map<String, MyClass> secondaryFactories
= (Map<String, MyClass>) context.getBeansOfType(MyClass.class,
false, true);
return (MyClass) context.getBean("myClass");
Run Code Online (Sandbox Code Playgroud)
在哪里context是一个实例
org.springframework.context.support.AbstractApplicationContext
Run Code Online (Sandbox Code Playgroud)
请注意,我们忽略了返回值getBeansOfType().这工作得很好,但问题是调用getBeansOfType()是耗时的.但是,即使我们忽略此调用的返回值,如果我们尝试消除此调用,则MyClass返回的实例getBean()未完全初始化.(所以,显然,呼吁会产生getBeansOfType()某种我们需要的副作用.)
我们怀疑调用getBeansOfType()是否过度,我们可以做一些更轻量级的事情,以便MyClass通过调用获得的实例getBean()将被完全初始化(但它不是null并且没有抛出异常).
那么,有没有更有效的方法呢?
我有对象我正在数据绑定到WPF中的ListBox.以下是最终结果的样子:
------------------------------- | Name | Opt1 | Value1 | | | Opt2 | Value2 | | | Opt3 | Value3 | | | Opt4 | Value4 | -------------------------------
基本上我有一个整体变量的DataTemplate,然后Opt/Value组合有它自己的DataTemplate.我正在尝试尽可能简单地显示值列表.
<Label Content="{Binding Path=Identifier.Name, Mode=OneWay}" />
<ListView Grid.Column="1" HorizontalAlignment="Stretch"
ItemsSource="{Binding Path=Values, Mode=OneWay}" />
Run Code Online (Sandbox Code Playgroud)
Value的绑定目前只有<Grid>2 <Label>,而ListView有很多我不看的功能,比如边框样式,选择等,当我真正想要的是能够使用List进行数据绑定时.
我试图将项目数据绑定到一个堆栈面板,但无法让它在XAML中工作.我想另一个解决方案是做我正在做的事情,并重写<Style>for ListView.有关正确方法的任何建议吗?
我基本上试图将数据从SQL Server 2005中的一个数据库中的表复制到另一个表,在同一个SQL Server实例中的另一个数据库中具有相同的结构(但很多索引).
我目前的方法是显而易见的INSERT/SELECT:
set identity_insert TargetDBName.dbo.TableName on
insert into TargetDBName.dbo.TableName ([FieldsList])
select [FieldsList] from TargetDBName.dbo.TableName
set identity_insert SourceDBName.dbo.TableName off
Run Code Online (Sandbox Code Playgroud)
这大概是永久性的(1000万条记录需要1小时,而从索引表到没有索引的表需要20分钟).
最好的方法是什么?
谢谢!
我是一名构建工程师,负责我们的源代码控制布局.我们需要保留所有数据库对象的版本,并将更改与滚动脚本组合在一起以推送到生产环境.我们有开发,QA和生产环境,每个环境中都有不同版本的数据库对象.我们遇到麻烦的一个方面是表创建vs改变.开发人员将检查更改但重新创建我们需要创建的数据库.任何想法,将不胜感激.
我有两个相同类型的对象,我想循环遍历每个对象的公共属性,并提醒用户哪些属性不匹配.
是否可以在不知道对象包含哪些属性的情况下执行此操作?
只是想知道是否有人有三个经验.我已经使用了一些RoR读取并使用了Django.它们看起来相当容易使用.电梯"容易"就像这两个一样吗?我知道简单是主观的,在这里没有背景.我的意思是在一个非常高的水平和一般意义上.
我有一大堆数据要在谷歌地图上绘制.由于数据集大小,谷歌地图总是在绘制所有点之前冻结几秒钟.我在加载时使用了一个动画旋转圆圈来显示它正在进行中.但最终用户更愿意看到行动.他们希望逐步在地图上绘制数据,而不是一次性绘制所有数据.由于javascript不支持多线程,最好的方法是什么?
我试图将一个表格停靠在MDI上,但是当我使用下面的代码时,它只是自动闪烁并且表单消失了.
using (frmDock formDock = new frmDock())
{
formDock.MdiParent = this;
formDock.Dock = DockStyle.Left;
formDock.Show();
}
Run Code Online (Sandbox Code Playgroud) 我UITextView用来编辑文字.我想使用两个UIButtons编辑和保存.最初我想显示编辑UIButton,当用户点击编辑时我想显示保存UIButton.当内容成功保存后,我不想再显示保存按钮了.
我是ac#coder,在c#中,我曾经这样做过
C# code
btnedit.visible=true;
Run Code Online (Sandbox Code Playgroud)
现在我想知道如何使一个按钮可见而且从目标c代码中看不到.
谢谢,