小编Chr*_*ris的帖子

如何将一对字符串存储在非唯一列表中

我有一种情况,我从XML文档加载一些配置数据,我有一堆包含字符串对的元素.我试着寻找一种将这些存储在一个对象中的好方法.

我喜欢的东西Dictionary<string,string>除了我希望能够有重复的键,我永远不会搜索它的单个值,jsut迭代它来生成一些HTML放在页面上.

有一个好的对象可以使用吗?我知道我可以创建一个自己的小类来保存两位数据,并有一个列表,但这似乎有点过分.

我也可以只有两个列表,只知道一个中的第n个元素与另一个中的第n个元素一起使用.尽管如此,这让我感到害怕.

还有System.Web.UI.Pair似乎做了我想要的但是我不确定它是否是在System.Web.UI命名空间中使用它的好习惯...

我可能错过了一些明显的东西,但我想我会问,而不是花更多的时间来考虑最好的方法来做到这一点.:)

.net c#

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

用于删除字符串末尾字符的正则表达式

我想递归地匹配所有以 :or/;or结尾的文本,,并删除所有这些字符以及文本末尾留下的任何空格。

例子:

some text :  ;  ,    / 
Run Code Online (Sandbox Code Playgroud)

应该变成:

some text
Run Code Online (Sandbox Code Playgroud)

我所尝试的只是删除找到的任何这些特殊字符的第一次出现,如何递归地执行此操作,以便删除找到匹配的所有字符?我使用的正则表达式:

寻找: [ ,;:/]*

替换为任何东西

c# regex

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

如何在Windows .NET服务中进行错误处理

这感觉就像之前可能已被问到的一个问题,但我找不到它,所以我想(可能再次).

我正在编写一个Windows服务来进行一些文件监控和处理.它完全按照我的要求行事,但我知道在对文件系统或事件日志进行读/写操作时,我的代码可能会出现几个错误.我准备加入一些尝试/捕获,我希望有错误,但我想做一些全局错误处理来获取所有那些不可预见的问题.我不知道该怎么做.

我的第一个想法是寻找某种类似于我在ASP.NET项目中找到的全局错误处理程序,但在这些行中看不到任何东西.

另一个想法是我可以获得所有顶级函数调用并在它们周围放置一个try/catch.正如我所看到的那样,这意味着在我的所有事件处理程序代码和我的服务Start和Stop方法中放置一个try/catch.这不是一种好方法,所以我想我可能以错误的方式接近这个.任何人都可以建议我在错误处理方面应该做些什么吗?

我假设在一个服务中我不希望它只是抛出错误,因为它可能会停止服务,或者我实际上应该让服务崩溃并通过我见过的恢复机制自动重启它?

我在这里很不确定所以请与我分享你的智慧...... :)

.net windows-services

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

检查并从字符串转换为日期vb.net

我是VB.NET的初学者,我陷入了一个非常简单的事情,日期格式.

我正在开发一个应用程序,它将excel表中的数据上传到sql server数据库.只有在mm/dd/yyyy格式下,应用程序才会接受日期.它应该拒绝所有日期.

现在我正在努力检查它的格式.这是我的代码.

Dim ROHSDate As String
ROHSDate = Trim(filterString(holdingTank))
... 
here i need to check if it is in mm/dd/yyyy format
Run Code Online (Sandbox Code Playgroud)

请帮忙.

.net vb.net date-format

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

我可以在单个语句中从集合中进行此linq语句迭代吗?

bool isExist = objCustomization.CustomSettings.Where(p => p.CustomizationType == selCustomizationType && p.CategoryID == selCategoryID).Any();

if (isExist)
{
    chkFixLimit.Checked = objCustomization.CustomSettings.Where(p => p.CustomizationType == selCustomizationType && p.CategoryID == selCategoryID).FirstOrDefault().IsDefaultLimit;
}
else chkFixLimit.Checked = false;
Run Code Online (Sandbox Code Playgroud)

c# linq

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

关于yield IEnumberable的迭代器问题

我写了一个程序,旨在从给定的起点创建一个随机的数字列表.这是一个很快的肮脏的东西,但我发现它有一个有趣的效果,我不太明白.

void Main()
{
    List<int> foo = new List<int>(){1,2,3};
    IEnumerable<int> bar = GetNumbers(foo);
    for (int i = 1; i < 3; i++)
    {
        foo = new List<int>(){1,2,3};
        var wibble = GetNumbers(foo);
        bar = bar.Concat(wibble);
    }
    Iterate(bar);
    Iterate(bar);
}

public void Iterate(IEnumerable<int> numbers)
{
    Console.WriteLine("iterating");
    foreach(int number in numbers)
    {
        Console.WriteLine(number);
    }
}

public IEnumerable<int> GetNumbers(List<int> input)
{
    //This function originally did more but this is a cutdown version for testing.
    while (input.Count>0)
    {
        int returnvalue = input[0];
        input.Remove(input[0]);
        yield return …
Run Code Online (Sandbox Code Playgroud)

c# ienumerable yield-return

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