小编Nik*_*van的帖子

将C#中'var'的值初始化为null

我想给一个变量赋值为null的初始值,并在接下来的分配其价值if- else块,但编译器给了一个错误,

必须初始化隐式类型的局部变量.

我怎么能实现这个目标?

c# var

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

使用Shell32获取File扩展属性时出现异常

我试图使用Shell32在c#中获取扩展文件属性.

我的代码如下.

        var file = FileUpload1.PostedFile;

        List<string> arrHeaders = new List<string>();

        Shell shell = new ShellClass();

        //Exception is thrown at next line
        Folder rFolder = shell.NameSpace(Path.GetDirectoryName(file.FileName));
        FolderItem rFiles = rFolder.ParseName(Path.GetFileName(file.FileName));

        for (int i = 0; i < short.MaxValue; i++)
        {
            string value = rFolder.GetDetailsOf(rFiles, i).Trim();
            arrHeaders.Add(value);
        }
Run Code Online (Sandbox Code Playgroud)

我得到如下例外情况. 在此输入图像描述

消息 - 无法将"Shell32.ShellClass"类型的COM对象强制转换为接口类型"Shell32.IShellDispatch6".此操作失败,因为对IID为"{286E6F1B-7113-4355-9562-96B7E9D64C54}"的接口的COM组件的QueryInterface调用由于以下错误而失败:不支持此类接口(HRESULT异常:0x80004002(E_NOINTERFACE)) .

堆栈跟踪 - 位于Shell32.ShellClass.NameSpace(Object vDir)的System.StubHelpers.StubHelpers.GetCOMIPFromRCW(Object objSrc,IntPtr pCPCMD,IntPtr&ppTarget,Boolean&pfNeedsRelease),位于c:中的PBSWebApplication.Test.Button1_OnClick(Object sender,EventArgs e)\Projects\PBSWebApplication\PBSWebApplication\PBSWebApplication\Test.aspx.cs:System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument)at System.Web.UI.WebControls.Button.OnClick(EventArgs e)的第33行System.Web.UI.Page.RaisePostBackEvent上的System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl,String eventArgument)中的System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) System.Web.UI.Page.ProcessRequestMain上的(NameValueCollection postData)(Boolean includeStagesBeforeAsyncPoint,Boolean includeStagesAfterAsyncPoint)

如何解决这个问题?

谢谢.

.net c# asp.net

14
推荐指数
3
解决办法
8463
查看次数

如何在具有多个infowindows的google maps api v3中为infowindow获取关联的标记对象

我的页面上有一个谷歌地图,我在地图上显示多个标记,每个标记都附有信息窗口,当我点击标记时,它的相关信息窗口会打开并显示标记的信息.

我在infowindow有一个按钮,用于更新标记的相关状态,更新后我更改了标记图标.

那么,我如何获得点击按钮的infowindow的精确标记对象.

请注意,一次可能有多个infowindows打开.

谢谢.

infowindow google-maps-api-3

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

Dictionary <string,bool?> error - 修改了集合; 枚举操作可能无法执行

我收到System.InvalidOperationException:收集被修改; 枚举操作可能无法执行.我的以下代码中的错误.

//temporary var for storing column sort orders according to view type
        Dictionary<string, bool?> tempColumnSortOrders=new Dictionary<string,bool?>(4);
 //Check for column name in col list
        if (tempColumnSortOrders.ContainsKey(fieldToSort))
        {
            //If exists set column sort order to new sort order
            //Set new sort order
            tempColumnSortOrders[fieldToSort] = sortOrder;
            var tempSortOrders = tempColumnSortOrders;
            //remove sort order of other columns
            foreach (var kvp in tempSortOrders)
            {
                //Reset other columns sort other than current column sort
                if (kvp.Key != fieldToSort)
                {
                    tempSortOrders[kvp.Key] = null;
                } …
Run Code Online (Sandbox Code Playgroud)

.net c#

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

如何在谷歌地图 api v3 中一次只显示一个信息窗口

我们可以在谷歌地图中一次只显示一个信息窗口,并为多个标记显示多个信息窗口。

意思是,当我单击标记时隐藏/关闭其他信息窗口并仅显示当前标记信息窗口。

谢谢。

google-maps google-maps-api-3 google-maps-markers

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