小编Ank*_*esh的帖子

读取Excel文件的最佳方法(.xls/.xlsx)

我知道有不同的方法来读取Excel文件:

  • Iterop
  • Oledb
  • Open Xml SDK

兼容性不是问题,因为程序将在受控环境中执行.

我的要求:
将文件读取到DataTable/ CUstom Entities(我不知道如何为对象创建动态属性/字段[列名将在Excel文件中变化])

用于DataTable/Custom Entities使用其数据执行某些操作.

更新DataTable操作结果

把它写回去excel file.

哪个更简单.

如果可能的话,请告诉我自定义实体(动态地向对象添加属性/字段)

c# oledb excel excel-interop openxml-sdk

65
推荐指数
5
解决办法
20万
查看次数

通过匿名代表取消订阅活动

我使用Resharper 5.1代码分析很多次我从resharper得到一个评论

"通过匿名代表取消订阅"

#Part of Code  

if (((bool)e.NewValue))
{
    listView.PreviewTextInput += (o,args) =>
        listView_PreviewTextInput(o,args,listView);
}
else
{
    listView.PreviewTextInput -= (o, args) => 
        listView_PreviewTextInput(o, args, listView);
}
Run Code Online (Sandbox Code Playgroud)

我怎么能纠正或优化这件事

c# wpf attachedbehaviors

17
推荐指数
2
解决办法
5600
查看次数

错误rxjs_Observable __.Observable.forkJoin不是函数?

我正在使用Rxjs中的angualr-cli应用程序.

在viewer.component.ts中

    //Other Imports
    import { Observable } from 'rxjs/Observable';
    //omitting for brevity
   export class ViewerComponent implements OnInit, AfterViewInit, OnDestroy {
    someFunction(someArg){
    //omitting for brevity
    let someArray: any = [];
    //Add some info
    Observable.forkJoin(someArray).subscribe(data => {
              //Do something with data
            });
    }
    //omitting for brevity
    }  
Run Code Online (Sandbox Code Playgroud)

我得到了错误

ERROR TypeError: __WEBPACK_IMPORTED_MODULE_2_rxjs_Observable__.Observable.forkJoin is not a function
    at ViewerComponent.webpackJsonp../src/app/component/viewer.component.ts.ViewerComponent.someFunction(http://localhost:4200/main.bundle.js:4022:73)
    at http://localhost:4200/main.bundle.js:3951:31
Run Code Online (Sandbox Code Playgroud)

但如果我Rxjs完全导入(import 'rxjs';)一切正常.没错.我似乎还明白了什么是必要的.我也尝试导入rxjs/Observable/forkjoin但没有任何可用的.

关于如何解决这个问题的任何指示.

fork-join rxjs5 angular-cli angular

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

使用带WinRT的HttpClient类

我有一段在.NET(4.0)中完美运行的代码

码#

        string URI = "http://www.indianrail.gov.in/cgi_bin/inet_pnrstat_cgi.cgi";
        string Parameters = Uri.EscapeUriString("lccp_pnrno1=8561180607&submitpnr=Get Status");
        System.Net.HttpWebRequest req = (HttpWebRequest)System.Net.WebRequest.Create(URI);
        //HTTP POST Headers
        req.ContentType = "application/x-www-form-urlencoded";
        req.Host = "www.indianrail.gov.in";
        //You can use your own user-agent.
        req.UserAgent = "Mozilla/5.0 (compatible; MSIE 7.0; Windows Phone OS 7.5; Trident/5.0; IEMobile/9.0) DELL;Venue Pro";
        req.Headers.Add(HttpRequestHeader.AcceptLanguage, "en-us,en;q=0.5");
        req.Headers.Add(HttpRequestHeader.AcceptCharset, "ISO-8859-1,utf-8;q=0.7,*;q=0.7");
        req.KeepAlive = true;
        req.Referer = "http://www.indianrail.gov.in/pnr_stat.html";
        req.Accept = "text/plain";
        req.Method = "POST";
        //Byte size calculation before sending request.
        byte[] bytes = System.Text.Encoding.ASCII.GetBytes(Parameters);
        req.ContentLength = bytes.Length;
        System.IO.Stream os = req.GetRequestStream();
        os.Write(bytes, 0, bytes.Length); …
Run Code Online (Sandbox Code Playgroud)

c# httpclient windows-runtime .net-4.5

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

使用不同的父节点和不同的子节点实现WPF树视图?

我想实现一个具有以下结构的树视图.....

[RootNode] <----树的根
- [ParentNode P1] <---- ModelClass P1的对象
---- [ChildNode C1] <----- ModelClass C1的对象(有不同类型的子节点) ()
[ChildNode C2] <----- ModelClass C2的对象(也有不同类型的子
节点)---- [ChildNode C3] <----- ModelClass C3的对象(有)不同类型的孩子)
- [ParentNode Q1] <---- ModelClass Q1的对象
---- [ChildNode B1] <----- ModelClass B1的对象(也有不同类型的孩子)
- --- [ChildNode B2] <----- ModelClass B2的对象(也有不同类型的子
节点)---- [ChildNode B3] <----- ModelClass B3的对象(有不同类型的子节点)()
[ParentNode R1] <---- ModelClass R1的对象
---- [ChildNode A1] <----- ModelClass A1的对象(也有不同类型的子节点)
---- [ ChildNode A2] <----- ModelClass A2的对象(也有不同类型的子
节点)---- [ChildNode A3] <----- ModelClass A3的对象(也有不同类型的子节点))

我已经查看了本网站以及网络上提出的许多解决方案.....但只是无法弄清楚如何做到这一点......

这是我对Wpf的第一次尝试,这是一个至关重要的要求......

也很难找到上述不同类的对象模型.....

上面显示的所有类都有其他属性,包括它们的子节点......我不想只显示子节点的所有属性 …

wpf treeview lazy-loading hierarchicaldatatemplate

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

在C#中为Windows 7和Xp Sp3控制Windows防火墙

我在这里有一个完美的Windows 7代码,我从这篇文章中获得帮助....

在Win Xp Sp3 PC上编译相同代码时会出现问题.它不会导致...说界面丢失(错误)....

我似乎无法弄明白.我已经为windows xp再次添加了对hnetcfg.dll(COM APi参考)的引用(在Windows 7中我必须将nother dll" FirewallAPi.dll " 添加到项目中)

using NATUPNPLib;
using NETCONLib;
using NetFwTypeLib;
Run Code Online (Sandbox Code Playgroud)

但是VS仍然看不到接口和其他类

请原谅张贴整个代码

防火墙经理

using System;
using System.Collections;
using System.IO;
using System.Linq;
using System.Reflection;
using System.Runtime.InteropServices;
using NATUPNPLib;
using NETCONLib;
using NetFwTypeLib;

namespace WindowsFirewallManager
{
/// Allows basic access to the windows firewall API.
/// This can be used to add an exception to the windows firewall
/// exceptions list
public class FirewallHelper
{
    #region Variables

    /// Hooray! …
Run Code Online (Sandbox Code Playgroud)

c# wpf windows-firewall-api windows-xp-sp3 windows-7-x64

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

在C#中用空格分割字符串

我想用白色空格分割一个字符串,除非字符串中的文本是双引号("text")或单引号('text').

我正在使用此功能:

public static string[] ParseKeywordExpression(string keywordExpressionValue, bool isUniqueKeywordReq)
{
    keywordExpressionValue = keywordExpressionValue.Trim();
    if (keywordExpressionValue == null || !(keywordExpressionValue.Length > 0))
        return new string[0];
    int idx = keywordExpressionValue.Trim().IndexOf(" ");
    if (idx == -1)
        return new string[] { keywordExpressionValue };
    //idx = idx + 1;
    int count = keywordExpressionValue.Length;
    ArrayList extractedList = new ArrayList();
    while (count > 0)
    {
        if (keywordExpressionValue[0] == '"')
        {
            int temp = keywordExpressionValue.IndexOf(BACKSLASH, 1, keywordExpressionValue.Length - 1);
            while (keywordExpressionValue[temp - 1] == …
Run Code Online (Sandbox Code Playgroud)

c# regex string-split

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

在WPF DataGrid上拖动Drop Row行为

我试图做一个附加行为来重新排序行bby做 Drag & Drop

我发现了一些解决方案(在Stackoverflow上和通过谷歌搜索)并使用它们我试图做出行为......我从Hordcodenet网站上拿了例子(我现在没有链接)

public static class DragDropRowBehavior
{
    private static DataGrid dataGrid;

    private static Popup popup;

    private static bool enable;

    private static object draggedItem;

    public static object DraggedItem
    {
        get { return DragDropRowBehavior.draggedItem; }
        set { DragDropRowBehavior.draggedItem = value; }
    }

    public static Popup GetPopupControl(DependencyObject obj)
    {
        return (Popup)obj.GetValue(PopupControlProperty);
    }

    public static void SetPopupControl(DependencyObject obj, Popup value)
    {
        obj.SetValue(PopupControlProperty, value);
    }

    // Using a DependencyProperty as the backing store for PopupControl.  This enables animation, styling, binding, etc... …
Run Code Online (Sandbox Code Playgroud)

c# wpf drag-and-drop wpfdatagrid attachedbehaviors

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

C#中的递归字符串替换

塞纳里奥

我有一个对象关键字 - >它有一个名称和一个值(字符串)

关键字不能包含itsSelf ...但可以包含其他关键字示例

K1 = "%K2% %K3% %K4%"

其中K2,K3,K4是关键词......

只是用他们的价值观重新实现它们,但这里有一个我正面临的问题

考试:

K3= "%K2%"

K2= "%K4%"

K4="%K2%"

现在,如果我开始更换,将会有一个无限循环,因为K2给了K4和副Versa ......

我希望避免这样的问题

但是要求我允许uesr嵌套其他关键字...我怎么能检查"添加如果DeadLock发生"我将显示无效...我应该使用HashTable或什么... Some Code Direction would be nice...

c# algorithm replace

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

是否有针对Windows运行时(WinRT)的SDK?

WinRT是否有某种SDK.?我们现在可以为它开发应用程序吗?

VS2010是否可用于开发或将其他IDE发送?此外,在WinRT中开发面向性能的应用程序是否需要C++,或者C#应用程序是否会提供相同的性能?可以在Win7上进行开发吗?

我对此感到好奇,因为我在WPF发布时错过了,我不想错过这个.

windows-8 windows-runtime

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

将项目转换为C#时,在哪里编写ApplicationEvents.vb的函数

我试图将VB.NET项目转换为C#.我按要求传递所有表单和类,但我不知道从ApplicationEvents.vb中编写事件需要从哪里开始(我相信它的属性是autoGenerated)

这是我的ApplicationEvent.vb文件中的代码:

Imports GM.Powertrain.RemoteCopy.Interfaces
Imports System.Runtime.Remoting.Channels.Tcp
Imports System.Runtime.Remoting.Channels

Namespace My
   Partial Friend Class MyApplication
      Private Shared serviceConfig As ServiceConfig =
         serviceConfig.Load()

      Protected Overrides Function OnStartup(
            ByVal eventArgs As StartupEventArgs) As Boolean
         Dim channel As TcpChannel = New TcpChannel()
         ChannelServices.RegisterChannel(channel, False)
         Me.MainForm = New Computer_Network_MAIN_SCREEN()
         Return MyBase.OnStartup(eventArgs)
      End Function

      Public ReadOnly Property Config() As ServiceConfig
         Get
            Return serviceConfig
         End Get
      End Property

      Public ReadOnly Property LocalMachine() As IRemoteCopier
         Get
          Return serviceConfig.GetObject(Of IRemoteCopier)("localhost")
         End Get
      End Property
   End Class
End Namespace
Run Code Online (Sandbox Code Playgroud)

此外,任何可能有助于此转换的提示将不胜感激.谢谢!

c# vb.net vb.net-to-c#

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