我不知道为什么IndexOutOfRangeException我要清理时间System.Collections.Generic.List<T>.这有意义吗?
List<MyObject> listOfMyObject = new List<MyObject>();
listOfMyObject.Clear();
Run Code Online (Sandbox Code Playgroud) 我们的应用程序遇到了这个大问题.它是一个相当大的应用程序,包含几个模块,以及成千上万行代码.应用程序的很多部分只是在引用另一个对象时才存在,例如,如果没有House对象,Person对象永远不会存在,所以如果你在应用程序的任何一点说:
bool check = App.Person.House == null;
Run Code Online (Sandbox Code Playgroud)
check应始终是false(设计),因此,继续使用这个例子中,在创建模块,测试,调试,App.Person.House永远不能为null,但是一旦我们发货的应用我们的客户,他们开始得到了一堆NullReferenceException用设计中的对象永远不应该有空引用.他们告诉我们这个bug,我们尝试在这里重现它,但是90%的时间我们都不能,因为这里工作正常.
该应用程序正在使用C#和WPF进行开发,并且在设计上,它仅在Windows XP SP 3和.net框架v3.5上运行,因此我们知道用户具有相同的操作系统,Service Pack和.net框架就像我们在这里做的那样,但他们仍然NullReferenceExceptions觉得我们无法重现这种奇怪.
所以,我只是想知道是否有人之前已经看过这个以及你如何修复它,我们在5台不同的计算机上每天至少运行8个小时的应用程序,我们从未看到这些异常,这只发生在客户端某些原因.
任何想法,任何线索,任何可以让我们更接近解决这个问题的解决方案将不胜感激.
谢谢!
所以我在PHP中有这两个时间戳
1253339331
1253338959
Run Code Online (Sandbox Code Playgroud)
我希望能够以某种方式获得那些与日期时间之间的小时差异.我们的用户在第一次尝试后应该只有24小时的登录时间,因此我需要查看是否允许他们再次登录不到24小时.
所以我遇到了试图实现MVVM的问题.AFAIK在ViewModel类中执行方法的最佳方法是通过CommandBinding.
<Button Command={Binding DoSomethingCommand} />
Run Code Online (Sandbox Code Playgroud)
只有这次我需要在ListBoxItem上双击一些东西,ListBoxItem不实现ICommandSource.所以我想知道最好的方法是什么,如果有的话.
谢谢!
编辑:
我只是想到了一种方式,但它似乎相当hacky.如果我公开ListBox.DoubleClick事件,我的ViewModel类订阅它并在触发DoubleClick时运行正确的方法怎么办?
我正在尝试在Windows Phone 7中打开一个文件,但它说它不存在.这是我正在尝试的代码:
IsolatedStorageFile file = IsolatedStorageFile.GetUserStoreForApplication();
bool test = file.FileExists("\\ClientBin\\clubs.xml");
Run Code Online (Sandbox Code Playgroud)
在我的项目中,我添加了一个名为ClientBin的文件夹,clubs.xml就在那里.clubs.xml文件属性是:
构建操作:内容复制到输出目录:始终复制
我不确定我做错了什么.你可以在这个截图中看到我的内容.
谢谢!
只是想知道我在标题中提到的是一个好习惯.这对我来说很有意义,我们重写GetHashCode以返回一个基于两个属性的值,如果匹配,则应将两个对象视为相等.逻辑似乎很好,代码可以工作,但我不知道它是否会导致其他问题.
这是使用GetHashCode:
public static bool operator ==(CartesianCoordinates a, CartesianCoordinates b)
{
return a.GetHashCode() == b.GetHashCode(); // Using GetHashCode here
}
public static bool operator !=(CartesianCoordinates a, CartesianCoordinates b)
{
return !(a == b);
}
public override bool Equals(object obj)
{
return this == (CartesianCoordinates)obj; // This just uses the == override
}
public override int GetHashCode()
{
return (this.X + this.Y.ToLower()).GetHashCode(); // GetHashCode hashes the two properties we care about
}
Run Code Online (Sandbox Code Playgroud)
这就是我以前的方式:
public static bool operator ==(CartesianCoordinates a, CartesianCoordinates b) …Run Code Online (Sandbox Code Playgroud) 正如标题所说,我想阻止FlipView在某些情况下滚动.有没有办法做到这一点?(请在C#中!)
好吧,我有一个ItemsControl绑定到a List<IComparableObject>,每一秒List对象都会改变,所以我不得不求助它们,所以我每秒都调用这个List.Sort()方法.在VS2008中检查Watch面板,我可以告诉它List被排序,但是ItemsControl没有.我怎样才能做到这一点?
谢谢!