小编Fis*_*rdo的帖子

将VB Linq转换为C#

我正在通过转换现有项目来自学C#,并且无法转换以下vb linq代码:

Dim outStuff = From tt In (From t In Products.SelectMany(Function(p) If(p.tags IsNot Nothing, p.tags, New ObservableCollection(Of TagModel)))
               Group By tagName = t.name,
                                  v = (Aggregate p In Products Where If(p.tags IsNot Nothing, p.tags.Contains(t), Nothing) Into Sum(p.views)),
                                  nl = (Aggregate p In Products Where If(p.tags IsNot Nothing, p.tags.Contains(t), Nothing) Into Sum(p.num_likes))
               Into g = Group, Count())
               Group By name = tt.tagName Into Count = Sum(tt.Count), viewsTotal = Sum(tt.v), num_likesTotal = Sum(tt.nl)
               Select name, Count, viewsTotal, num_likesTotal
Run Code Online (Sandbox Code Playgroud)

哪里 Products As …

c# linq vb.net linq-to-objects c#-4.0

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

如何显示数组元素出现的次数

我是C#的新手,希望我能在这个主题上得到一些帮助.我有一个包含元素的数组,我需要显示每个项目出现的次数.

例如,在[1, 2, 3, 4, 4, 4, 3],1出现一次,4出现三次,依此类推.

我做了以下但不知道如何把它放在foreach/if语句中......

int[] List = new int[]{1,2,3,4,5,4,4,3};
foreach(int d in List)
{
    if("here I want to check for the elements")
}
Run Code Online (Sandbox Code Playgroud)

谢谢你,对不起,如果这是一个非常基本的...

c# arrays

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

Dictionary <int,List <string >>

我有这样的事情:

Dictionary<int, List<string>> fileList = new Dictionary<int, List<string>>();
Run Code Online (Sandbox Code Playgroud)

然后,我用一些变量填充它,例如:

fileList.Add(
    counter, 
    new List<string> { 
        OFD.SafeFileName, 
        OFD.FileName, 
        VERSION, NAME      , DATE  , 
        BOX    , SERIAL_NUM, SERIES,  
        POINT  , NOTE      , VARIANT
    }
);
Run Code Online (Sandbox Code Playgroud)

counter每次发生某事时增加+1的变量在哪里,List<string>{XXX}哪里XXX是包含一些文本的字符串变量.

我的问题是,如果counter == 1,如何从列表中访问这些字符串?

c# dictionary list

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

WindowsPrincipal.IsInRole和通用与全局活动目录组

有人知道如何WindowsPrincipal.IsInRole("domain\role")使用活动目录通用组吗?

假设当前用户是名为Domain的域中名为Role的组的成员,并且Role组是Active Directory中的Global组.然后,以下代码将产生result = true:

WindowsPrincipal wp = new WindowsPrincipal(WindowsIdentity.GetCurrent());
bool result = wp.IsInRole(@"domain\Role");
Run Code Online (Sandbox Code Playgroud)

但是,如果将Role组更改为通用组,则代码将生成result = false.

c# active-directory windows-principal isinrole

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

如何在Linux服务器上轻松运行C#代码?

我有一个PHP网站,我正在学习PHP,它位于Linux服务器上.如何在不与当前PHP代码冲突的情况下运行此C#代码?当我打开URL时site.com/hello.cs,它只是将整个内容显示为文本?在服务器上运行此代码需要什么?

public class Hello1
{
   public static void Main()
   {
      System.Console.WriteLine("Hello, World!");
   }
}
Run Code Online (Sandbox Code Playgroud)

c# linux

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

'number:true'在jquery验证中需要字段

我正在使用jQuery Validation插件

我希望我的一个字段是一个数字,但它不是必填字段.

问题是,当我设置时number: true,它需要该字段.这是为什么?我试图添加required: falsenumber: true,但无济于事.

这是我的代码:

name : {
    required:false,
    number:true
}
Run Code Online (Sandbox Code Playgroud)

我没有设置错误消息,但它显示默认错误消息:"请输入有效数字."

javascript jquery jquery-validate

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

如何仅随机生成完全饱和的颜色?

我通常使用以下代码来生成随机颜色:

Random rand = new Random();

Color random = Color.FromArgb((int)(rand.NextDouble() * 255), 
                              (int)(rand.NextDouble() * 255), 
                              (int)(rand.NextDouble() * 255));
Run Code Online (Sandbox Code Playgroud)

但它们中的大多数看起来像灰色的变体。如何将输出限制为仅完全饱和的颜色?

谢谢。

.net graphics bitmap

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

用jQuery引用立即选择器对象?

我正在尝试学习一些jQuery,并使用以下代码设置测试页面:

<a id='encode' href='javascript: void(0)'>encode</a> |  
<a id='decode' href='javascript: void(0)'>decode</a> | 
<br/>
<textarea id='randomString' cols='100' rows='5'></textarea>

<script type='text/javascript'>
$(document.ready(function () {
  $('#encode').click(function() {
    $('#randomString').val(escape($('#randomString').val()));
  });
  $('#decode').click(function() {
    $('#randomString').val(unescape($('#randomString').val()));
  });     
});
</script>
Run Code Online (Sandbox Code Playgroud)

我的想法是我可以在textarea中放置一些东西,然后点击"编码"或"解码",它将要么逃避或者忽略我放入textarea的东西.

这段代码工作正常,但我的问题与我如何更改textarea的值有关.在我的代码中,我选择了两次textarea值:一次(un)转义它,再一次改变值.IMO这看起来很笨拙,也许没必要.我想也许我可以这样做:

$('#randomString').val(escape(this));
Run Code Online (Sandbox Code Playgroud)

this似乎是指我点击的链接的对象,而不是#randomString选择器,所以是否有一些其他可以用来引用它的魔术词$('#randomString')

javascript jquery

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

关于IEqualityComparer <T>/List <T>的问题.Distinct()

这是我刚刚写的相等比较器,因为我想从包含实体的列表中获得一组不同的项.

    class InvoiceComparer : IEqualityComparer<Invoice>
    {
        public bool Equals(Invoice x, Invoice y)
        {
            // A
            if (Object.ReferenceEquals(x, y)) return true;

            // B
            if (Object.ReferenceEquals(x, null) || Object.ReferenceEquals(y, null)) return false;

            // C
            return x.TxnID == y.TxnID;
        }

        public int GetHashCode(Invoice obj)
        {
            if (Object.ReferenceEquals(obj, null)) return 0;
            return obj.TxnID2.GetHashCode();
        }
    }
Run Code Online (Sandbox Code Playgroud)
  1. 为什么Distinct需要比较器而不是Func<T,T,bool>
  2. (A)和(B)除了优化之外还有什么其他情况,并且由于比较引用的微妙性,它们是否会出现预期的行为方式?
  3. 如果我想,我可以替换(C)

    return GetHashCode(x) == GetHashCode(y)

c# iequalitycomparer

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

jquery找到没有更多或更少的确切字符串

我有一些来自痕迹的文本,我用它来打开页面上的菜单项.例如,说出来bctext = 'pasta'.

我想以"面食"为目标,但不要说"yadda yadda yadda pasta".只有单个单词"pasta"的实例应该匹配,或者如果bctext是短语,那么它只会找到确切的短语.

这是我到目前为止:

$('ul#accordion a:contains(' + bctext + ')')
Run Code Online (Sandbox Code Playgroud)

但当然,这会发现"yadda yadda pasta".

我得到bctext以下内容:

var bctext = $('#CategoryBreadcrumb ul li:last-child').prev().children().text();
Run Code Online (Sandbox Code Playgroud)

然后,我使用以下内容编辑菜单:

$('ul#accordion a:contains(' + bctext + ')').parent()
                                            .addClass('special')
                                            .children('ul')
                                            .css('display','block'); 
Run Code Online (Sandbox Code Playgroud)

我想要的是什么?

regex jquery

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