问题列表 - 第34996页

ZIP文件格式支持的最早时间戳值是多少?

我试图将日期存储为ZIP文件中的最新修改时间戳.似乎ZIP格式仅支持1980-01-01之后的日期作为最后修改时间(至少通过Java API java.util.zip.ZipEntry)

它是否正确?最早支持的修改时间戳真的是1980-01-01 00:00:00吗?我试图找到一些参考来验证这一点,但我找不到任何.

zip file-format specifications

6
推荐指数
1
解决办法
2605
查看次数

处理实体框架OptimisticConcurrencyException

评估.NET实体框架我尝试使用乐观并发模式找到正确的模式来处理并发更新.

文档和许多其他地方我看到以下模式:


Try
  ' Try to save changes, which may cause a conflict. 
  Dim num As Integer = context.SaveChanges()
  Console.WriteLine("No conflicts. " & num.ToString() & " updates saved.")
Catch generatedExceptionName As OptimisticConcurrencyException
  ' Resolve the concurrency conflict by refreshing the 
  ' object context before re-saving changes. 
  context.Refresh(RefreshMode.ClientWins, orders)

  ' Save changes. 
  context.SaveChanges()
  Console.WriteLine("OptimisticConcurrencyException handled and changes saved")
End Try

我看到了以下问题

  • 它会自动实现last-in-wins而不是使用乐观模式
  • 它不健壮:.Refresh和.SaveChanges之间的并发更改会导致新的OptimisticConcurrencyException

这是正确的,还是我错过了什么?

在UI中,我通常让用户解决并发冲突:


Try
   _ctx.SaveChanges()
Catch ex As OptimisticConcurrencyException
   MessageBox.Show("Data was modified by another User." & vbCrLf …

.net entity-framework

5
推荐指数
1
解决办法
3450
查看次数

Object.Equals是虚拟的,但Object.operator ==不在C#中使用它?

我被C#中一个奇怪的"不对称"所打击,我真的不明白.请参阅以下代码:

using System;
using System.Diagnostics;
namespace EqualsExperiment
{
    class Program
    {
        static void Main(string[] args)
        {
            object apple = "apple";
            object orange = string.Format("{0}{1}", "ap", "ple");
            Console.WriteLine("1");
            Debug.Assert(apple.Equals(orange));
            Console.WriteLine("2");
            Debug.Assert(apple == orange);
            Console.WriteLine("3");
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

对于所有的.NET大师来说,这可能是显而易见的,但第二个断言失败了.

在Java中,我了解到==是这里名为Object.ReferenceEquals的同义词.在C#中,我认为Object.operator ==使用Object.Equals,它是虚拟的,因此它在System.String类中被覆盖.

有人可以解释,为什么第二个断言在C#中失败?我的哪些假设不好?

c# equals referenceequals equals-operator

5
推荐指数
2
解决办法
592
查看次数

将过滤器应用于BindingSource,但它不起作用

我有一个TextBox,我在其中放了一个短语,它可以是任务的描述,也可以是任务的id.我想使用此TextBox中的文本过滤列表.但是当我将文本放入此TextBox时,过滤不起作用,并且DataGridView中的集合不会更改.

有什么不对?

public void BindData()
{
    var emptyBindingSource = new BindingSource();
    dataGridViewTaskList.AutoGenerateColumns = false;
    dataGridViewTaskList.DataSource = emptyBindingSource;

    var taskList = GetTasks();

    _bindingSource = new BindingSource();
    _bindingSource.DataSource=taskList.Response;

    dataGridViewTaskList.AutoGenerateColumns = false;

    dataGridViewTaskList.DataSource = _bindingSource.DataSource;

    if (dataGridViewTaskList.Columns["gridViewColumnId"] == null)
        dataGridViewTaskList.Columns.Add(new DataGridViewColumn() {Name = "gridViewColumnId"});
    else
        dataGridViewTaskList.Columns["gridViewColumnId"].DataPropertyName = "Id";

    if (dataGridViewTaskList.Columns["gridViewColumnDescription"] == null)
        dataGridViewTaskList.Columns.Add(new DataGridViewColumn() {Name = "gridViewColumnDescription"});
    else
        dataGridViewTaskList.Columns["gridViewColumnDescription"].DataPropertyName = "Description";
}

private void tbSearchedPhraseOrId_TextChanged(object sender, EventArgs e)
{
    _bindingSource.Filter = string.Format("Id = '{0}'", tbSearchedPhraseOrId.Text);
}
Run Code Online (Sandbox Code Playgroud)

我在BindData方法中添加了以下内容,它也不起作用:

_bindingSource.Filter = string.Format("Id LIKE '%{0}%'", "23"); …
Run Code Online (Sandbox Code Playgroud)

c# bindingsource .net-3.5 winforms

3
推荐指数
1
解决办法
2万
查看次数

NSDate为该月的第一天

这是一个非常简单的概念,但到目前为止,我一直无法找到一个优雅的(和日历区域独立)解决方案.我需要找到一个任意的月份的第一天NSDate.例如,给定一个任意NSDate(arbitraryDate)将返回另一个NSDate对象(让我们调用它firstDayOfMonthDate),它代表该月的第一天arbitraryDate.时间组件并不重要,因为我只需要在该月的第一天使用NSDate对象(尽管为了整洁,如果时间刚刚归零,它将是有用的).

在此先感谢您的任何帮助.

iphone cocoa-touch nsdate nscalendar

28
推荐指数
2
解决办法
2万
查看次数

用Delphi编程JNI

我可以使用Delphi编程到Java Native Interface吗?通过阅读Essential JNI,您可以确保使用C调用约定.有人这样做过吗?我将很感激有关工具的提示,这些工具将有助于将例如Javah的C头文件转换为Delphi的工具.

delphi java-native-interface

8
推荐指数
1
解决办法
5355
查看次数

清理结帐后Git文件发生了变化

我做到了git checkout master.如果我这样做,git status它会在我的工作目录中显示两个已更改的文件,即使我没有触及它们.它似乎是某种行结束问题.

git reset --hard HEAD 也没有帮助.

我已经设定core.ignorecase=true,没有帮助.

这有什么不对?Windows上的Git仍然像地狱一样困扰着我......

git

4
推荐指数
1
解决办法
869
查看次数

如何在Map中存储多个字符串?

是否可以设置两个以上的值对?

例如:

Map<String,String,String,String>
Run Code Online (Sandbox Code Playgroud)

号码,姓名,地址,电话 - 全部汇集在一起​​显示值.每个值与其他值相关联.

java map

23
推荐指数
5
解决办法
2万
查看次数

我刚刚在Eclipse中创建了一个小的android项目,我应该将哪些文件添加到版本控制中?

我不知道,哪些文件应该为在eclipse中创建的新android项目进行版本控制.谁能告诉我,我应该添加什么?

eclipse version-control android

12
推荐指数
1
解决办法
3005
查看次数

禁止UIScrollView捕获子视图

UIScrollView有一种习惯UIView,它绝对需要倾听他内心发生的所有触摸事件.

起初,我得到的只是touchesBegan:touchesCancelled:事件.不touchesMoved:,不touchesEnded:.事实上,所有拖动手势都被上面取消了UIScrollView.这通过以下设置解决:

_scrollView.canCancelContentTouches = NO;
Run Code Online (Sandbox Code Playgroud)

现在,行为会根据UIView上第一次触摸的"时间长度"而变化.如果它很短,则管理相对拖动,因为它是一个滚动UIScrollView.如果它很长,那么我将在touchesMoved:UIView中获取事件.

我想要的是永远收到touchesMoved:我的UIView.我该怎么做?

iphone cocoa-touch objective-c uiscrollview ipad

3
推荐指数
1
解决办法
1855
查看次数