小编Sco*_*ain的帖子

当从另一个项目重新呈现时,并非所有库的refrenced DLL都被本地复制

我正在尝试使用LEADTOOLS成像库,他们有一大堆需要引用的dll.设置我们的设计方式我们有一个核心库,我们所有的项目都是基于的,LEADTOOLS需要的所有DLL都加载到我们的基础库中,并且它们被复制到本地的构建路径,但是当我们使用它们时我们的子项目只在本地复制了一些DLL(LeadTools.Codecs.dll和LeadTools.dll是特定的).

两个dll之间的设置没有区别,45个没有.我需要做些什么才能让那些编解码器dll过来在本地复制?

参考清单的上半部分

在此输入图像描述

参考清单和第二个项目的底部

在此输入图像描述

核心输出目录

在此输入图像描述

第二个项目的输出目录

在此输入图像描述

这是csproj文件中的ItemGroup部分.

  <ItemGroup>
    <Reference Include="Leadtools, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Abc">
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Abc.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Ani">
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Ani.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Bmp">
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Bmp.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Cal">
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Cal.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Clp">
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Clp.dll</HintPath> …
Run Code Online (Sandbox Code Playgroud)

.net c# dll projects-and-solutions visual-studio-2010

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

如何从另一个列表中存在的结构列表中删除项目

public struct RegistryApp
{
    public string VendorName;
    public string Name;
    public string Version;
} 
Run Code Online (Sandbox Code Playgroud)

我有两个List<RegistryApp>用于保存Windows框中当前安装的所有应用程序.为什么两个?好吧,我有一个List来保存所有x86应用程序,一个用于保存所有x64应用程序.

List<RegistryApp> x64Apps64List = new List<RegistryApp>();
List<RegistryApp> x64Apps32List = new List<RegistryApp>();
Run Code Online (Sandbox Code Playgroud)

一旦这两个填充了从注册表中检索到的适当数据,我尝试以下操作以确保没有重复项.这种方法很有效,List<string>但没有合作List<RegistryApp>.

List<RegistryApp> ListOfAllAppsInstalled = new List<RegistryApp>();

IEnumerable<RegistryApp> x86Apps = x64Apps32List.Except(x64Apps64List);
IEnumerable<RegistryApp> x64Apps = x64Apps64List.Except(x64Apps32List);

foreach (RegistryApp regitem in x86Apps)
{
    if ((regitem.Name != null) && 
     (regitem.Name.Length > 2) && 
     (regitem.Name != "")) 
    {
        ListOfAllAppsInstalled.Add(regitem);
    }
}

foreach (RegistryApp regitem in x64Apps) 
{
    if ((regitem.Name != …
Run Code Online (Sandbox Code Playgroud)

c# collections duplicate-removal

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

参数超出范围例外 - 网站检查

我正在开发一个应用程序,通过检查是否显示特定单词来检查网站是否已启动.在提供的代码中,我会显示一个图像(如果网站已启动,则为绿色,如果关闭则为红色),但是当计时器再次检查网站时,我必须删除此图像.我收到以下错误StkPan_Icons.Children.RemoveAt(RefNum);

指定的参数超出了有效值的范围.

任何帮助?

private void ClearImageStack(int RefNum)
{
    StkPan_Icons.Children.RemoveAt(RefNum);
}


private void GetSiteAndCompare(int URL_Num)
{
    using (var Client = new WebClient())
    {
        string SiteContent = Client.DownloadString("http://" + UrlArrary[URL_Num]);

        if (SiteContent.Contains(CheckForArray[URL_Num]))
        {
            StkPan_Icons.Children.Insert(URL_Num, GetGreen());
            FailRefArray[URL_Num] = false;
        }
        else
        {
            StkPan_Icons.Children.Insert(URL_Num, GetRed());
            Fail(URL_Num);
        }
    }
}

private void RunCheck()
{
    // Checks all the websites.
    for (int i = 0; i < URLCount; i++)
    {
        ClearImageStack(i);
        GetSiteAndCompare(i);
    }
Run Code Online (Sandbox Code Playgroud)

c# image exception

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

如何调试类库项目?

嗯,这个问题可能有一个明显的答案,我可能在这里错过了一个非常基本的观点.

我从codeproject.com下载了一个简单的应用程序,它在IE中创建了一个工具栏.应用程序输出设置为"ÇlassLibrary".现在我明白我无法从当前设置运行此应用程序.

我在下载的源代码中做了一些更改(比如在工具栏上添加一个新按钮).我想调试这个项目,看看在我最终部署它/在IE中安装它之前的变化是怎样的.但我不知道如何调试纯粹是用户控件的项目,并且无法自行运行.

有人可以帮助我,我在这里失踪了吗?有没有简单的方法可以直接从visual studio调试这个项目,就像我使用简单的Windows窗体应用程序或Web应用程序或控制台应用程序一样.

c# user-controls

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

三个查理Linq查询

我正在尝试在C#中编写一个linq查询,该查询将返回收到他们订购的所有项目的客户列表,但无法弄清楚

我的数据库模式如下所示:
表名:Customers,主要字段:CustomerId
表名:订单,主要字段:OrderId,外键:CustomerId
表名:OrderLineItems,主要字段:LineItemId,外键:OrderId

行项目表还有一个名为"状态"的字段,其中我指示此项目是否已"订购","延期交货","已发货"等.

我正在寻找的是至少有一个订单的客户列表(我对没有订购任何东西的客户不感兴趣),我只对至少有一件商品的订单感兴趣(以防万一有人创建了一个订单)没有任何项目的空订单),最后我的最后一个标准是所有项目必须具有给定的状态(例如:'发货').

如果我要编写SQL查询,它看起来像这样:

SELECT  c.*
  FROM  Customers c 
        INNER JOIN Orders o ON c.CustomerId = o.CustomerId
        INNER JOIN (SELECT oli.OrderId, COUNT(*) AS [NumberOfItems] FROM OrderLineItems oli WHERE oli.Status <> 'Shipped' GROUP BY oli.OrderId) items ON o.OrderId = items.OrderId
 WHERE  items.NumberOfItems = 0
Run Code Online (Sandbox Code Playgroud)

(顺便说一句,如果你能想到一个更好的方法来获取我正在寻找的数据),请随意提出更好的SQL查询

理想情况下,我会得到C#代码,看起来像这样:

var customers = from c in context.Customers
    where ...
    select c;
Run Code Online (Sandbox Code Playgroud)

c# linq

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

使用递归计数链表节点

如何使用递归来计算单个链表节点的数量(仅当语句时为no while或for循环)

int Elements(Node head)
{
    if (head==null)
        return 0;
    else
    {

    }
    head=head.next;
}
Run Code Online (Sandbox Code Playgroud)

c# recursion

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

排序字典&lt;object, List&lt;int&gt;&gt; c#

我想对一个对象列表进行排序,结构是一个 Dictionary<Object, List<int>>

字典中的项目将是

item_1, (2,2,3)
item_2, (1,3,4)
item_3, (2,3,4)
item_4, (1,2)
Run Code Online (Sandbox Code Playgroud)

一旦项目被排序,它们应该显示为

item_4, 1,2
item_2, 1,3,4
item_1, 2,2,3
item_3, 2,3,4
Run Code Online (Sandbox Code Playgroud)

所以,基本上我必须对列表中的第一项进行排序,然后是第二项,然后是第三项,使用 linq 实现这种解决方案的简单方法是什么

c# sorting dictionary

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

使用IEnumerators检查反序列化的进度

public static object Deserialize(string path)
{
    using (Stream stream = File.Open(path, FileMode.Open))
    {
        BinaryFormatter bformatter = new BinaryFormatter();
        return bformatter.Deserialize(stream);
    }
}
SomeClass someObject = (SomeClass)Deserialize(savePath);
Run Code Online (Sandbox Code Playgroud)

我想创建一个包含自身进度的反序列化过程.所以可能某种IEnumerator每帧更新我的进度字段.是否可以在读取文件时跟踪Formatter的位置?

当我反序列化大文件时,我想知道它是怎么回事......

c# binaryformatter unity-game-engine deserialization

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

如何实例化通用类型

我正在阅读Herbert Schildt的C#完整参考书.他说,关于泛型,那

只有一个泛型类的版本可以处理type参数是引用类型的所有情况.这是因为所有引用的大小(以字节为单位)是相同的.因此,只需要一个版本来处理所有类型的引用.这种优化还可以减少代码膨胀.

有人可以解释为什么所有引用类型只有一个版本的泛型类?C#如何仅使用一个版本进行管理?例如:在值类型的情况下,本书说,C#为Generic<int>和创建一个单独的类Generic<double>.那么,为什么它不为Generic<MyClass>和创建单独的类Generic<AnotherClass>?什么没有创建-seperate类的泛型引用类型与类的大小(如文中所述)?

c# generics

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

按多个参数列出排序

我有一个带有以下标题的.csv和文件中的示例行.

AgentID,Profile,Avatar,In_Time,Out_Time,In_Location,Out_Location,Target_Speed(m/s),Distance_Traveled(m),Congested_Duration(s),Total_Duration(s),LOS_A_Duration(s),LOS_B_Duration(s),LOS_C_Duration(s),LOS_D_Duration(s),LOS_E_Duration(s),LOS_F_Duration(s)
2177,DefaultProfile,DarkGreen_LowPoly,08:00:00,08:00:53,East12SubwayportalActor,EWConcourseportalActor,1.39653,60.2243,5.4,52.8,26.4,23,3.4,0,0,0
Run Code Online (Sandbox Code Playgroud)

我需要按照字母方向(例如东,北等)增加时间(08:00:00,08:00:01)和第6列(In_Location),按第4列(In_time)排序.csv.

到目前为止我的代码看起来像这样:

List<string> list = new List<string>();
using (StreamReader reader = new StreamReader("JourneyTimes.csv"))
{
    string line;
    while ((line = reader.ReadLine()) != null)
    {
        line.Split(',');
        list.Add(line);
    }
Run Code Online (Sandbox Code Playgroud)

我在.csv中读到并使用逗号分割它(没有其他逗号,所以这不是一个问题).然后我将每行添加到列表中.我的问题是如何在两个参数和.csv的标题上对列表进行排序.

我一直在寻找这一天,我对编程比较陌生,这是我的第一个程序,所以我为我缺乏知识而道歉.

c# csv sorting

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