小编tbi*_*hel的帖子

无需办公即可从C#创建Excel文件

我正在编写一个生成excel报告的程序,目前正在使用Microsoft.Interop.Excel引用.我的开发计算机上有Excel,但最终用户可能安装了Office,也可能没安装Office.如果最终用户计算机上未安装Office,或者此互操作服务是否与实际应用程序分开,此工具是否会失败?

c# excel file-io office-interop

57
推荐指数
6
解决办法
14万
查看次数

如何将WPF图像保存到文件

在WPF中,该System.Windows.Clipboard.getImage()函数返回一个BitmapSource对象.作为一个来自WinForms背景的WPF新手,我不清楚如何将这个图像保存到文件中.我必须采取哪些步骤?

wpf bitmapsource

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

引用System.Windows.Automation

我想通过BugSlayer尝试一些可用的自动化东西,但我对参考文献有疑问.

我正在试图弄清楚如何在visual studio中引用System.Windows.Automation库.我安装了.NET Framework v3.5和VS 2008,但UIAutomationClient和System.Windows.Automation都没有在引用的.NET或COM选项卡中显示为引用选项.

如果我浏览C:\WINDOWS\assembly\GAC_MSIL\UIAutomationClient\3.0.0.0__31bf3856ad364e35命令提示符,我可以看到dll ,但如果我浏览到Visual Studio中的程序集,我实际上无法访问dll.

我是否忽略了在项目中包含此内容的简单方法?

.net c# dll automation

26
推荐指数
3
解决办法
4万
查看次数

golang中的sql事务中的批量upsert

我一直在搞乱golang的sql包与事务,我试图了解如何进行批量upserts而没有每行的"每次插入"往返通信.这里示例并未真正显示如何进行批量查询.

updateMoney, err := db.Prepare("INSERT INTO balance set money=?, id=? ON DUPLICATE UPDATE balance SET money=money+? WHERE id=?")
...
tx, err := db.Begin()
...
res, err := tx.Stmt(updateMoney).Exec(123.45, 1, 123.45, 1)
res, err := tx.Stmt(updateMoney).Exec(67.89, 2, 67.89, 2)
res, err := tx.Stmt(updateMoney).Exec(10.23, 3, 10.23, 3)
...
tx.Commit()
Run Code Online (Sandbox Code Playgroud)

理想情况下,我可以进行准备好的查询,并建立一个同时发送的upserts列表......但是在这里,我们在每次执行后从数据库中得到一个结果.关于如何解决这个问题的任何建议?

编辑:我的同事找到了这张描述问题的开放票证 ......它看起来比一个交易环境中的严格问题更严重.

sql transactions bulkinsert upsert go

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

列表ForEach休息

有没有办法打破foreach扩展方法?"break"关键字无法将扩展方法识别为可以中断的有效范围.

//Doesn't compile
Enumerable.Range(0, 10).ToList().ForEach(i => { System.Windows.MessageBox.Show(i.ToString()); if (i > 2)break; });
Run Code Online (Sandbox Code Playgroud)

编辑:从问题中删除"linq"


注意代码只是一个示例,显示在扩展方法中没有工作...真正我想要的是用户能够中止处理列表.. UI线程有一个中止变量和for循环只是打破当用户点击取消按钮时.现在,我有一个正常的for循环,但我想看看是否可以使用扩展方法.

c# foreach break

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

在C#中同时读写文件

我有一个文件包含我想要监视更改的数据,以及添加我自己的更改.想像"Tail -f foo.txt".

基于这个线程,看起来我应该创建一个文件流,并将它传递给一个编写器和读者.但是,当读者到达原始文件的末尾时,它无法看到我自己写的更新.

我知道这似乎是一个奇怪的情况......它更多的是一个实验,看看它是否可以完成.

这是我尝试的示例案例:


foo.txt:
a
b
c
d
e
f


        string test = "foo.txt";
        System.IO.FileStream fs = new System.IO.FileStream(test, System.IO.FileMode.OpenOrCreate, System.IO.FileAccess.ReadWrite);

        var sw = new System.IO.StreamWriter(fs);
        var sr = new System.IO.StreamReader(fs);

        var res = sr.ReadLine();
        res = sr.ReadLine();
        sw.WriteLine("g");
        sw.Flush();
        res = sr.ReadLine();
        res = sr.ReadLine();
        sw.WriteLine("h");
        sw.Flush();
        sw.WriteLine("i");
        sw.Flush();
        sw.WriteLine("j");
        sw.Flush();
        sw.WriteLine("k");
        sw.Flush();
        res = sr.ReadLine();
        res = sr.ReadLine();
        res = sr.ReadLine();
        res = sr.ReadLine();
        res = sr.ReadLine();
        res = sr.ReadLine();
Run Code Online (Sandbox Code Playgroud)

过了"f"后,读者返回null.

c# filestream streamwriter streamreader

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

是否有Visual Studio 2010的sandcastle插件?

我真的很喜欢在我的项目中使用SandCastle生成的帮助文件...是否有适用于SandCastle的Visual Studio 2010插件,或者是直接与Visual Studio集成的另一个好的替代程序?

sandcastle visual-studio-2010

9
推荐指数
2
解决办法
6924
查看次数

WPF INotifyPropertyChanged用于链接的只读属性

我试图了解如何更新UI,如果我有一个依赖于另一个属性的只读属性,以便更改一个属性更新两个UI元素(在这种情况下是一个文本框和一个只读文本框.例如:

public class raz : INotifyPropertyChanged
{

  int _foo;
  public int foo
  {
    get
    {
      return _foo;
    }
    set
    {
      _foo = value;
      onPropertyChanged(this, "foo");
    }
  }

  public int bar
  {
    get
    {
      return foo*foo;
    }
  }

  public raz()
  {

  }

  public event PropertyChangedEventHandler PropertyChanged;
  private void onPropertyChanged(object sender, string propertyName)
  {
    if(this.PropertyChanged != null)
    {
      PropertyChanged(sender, new PropertyChangedEventArgs(propertyName));
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

我的理解是,当修改foo时,bar不会自动更新UI.这是正确的方法吗?

c# wpf inotifypropertychanged

9
推荐指数
4
解决办法
7209
查看次数

wp7上的实体框架

我发现一些博客看起来像是在使用Entity Framework将数据从Windows手机通过WCF保存到远程服务器(至少那就是扫描信息的样子)......但实体框架可以直接在电话?例如,假设我想使用Sqlite,甚至Azure作为我的后端...我可以在没有托管服务器的情况下完成所有工作吗?

c# entity-framework windows-phone-7

9
推荐指数
1
解决办法
745
查看次数

绑定到元组列表

我有一个元组列表配对两个数据......我想将列表绑定到数据网格.为了显示,它工作正常...但是如果我尝试修改一个条目,它说"一个TwoWay或OneWayToSource绑定不能在只读属性'Item1'上工作"......大概是元组在.NET 4.0中是不可变的.是否有一种简单的方法可以绑定到数据对而无需创建我自己的可变元组类?

c# data-binding wpf tuples

7
推荐指数
1
解决办法
5484
查看次数