小编TJB*_*TJB的帖子

如何在scriptcs csx脚本中定义扩展方法

我正在使用ScriptCS(这很棒!)但我无法弄清楚如何在.csx脚本文件中定义扩展方法.

举个例子:

using System.IO;

public static class Extensions
{
    public static string Remove(this string source, params string[] toRemove)
    {
        foreach(var r in toRemove)
        {
            source = source.Replace(r,"");
        }
        return source;
    }
}

string[] entries = 
    Directory
        .GetFiles(
            @"C:\Users\blah\blah",
            "*.mp4",
            SearchOption.AllDirectories)
    .Select( p => p.Remove("Users"))
    .ToArray();

foreach(var e in entries)
{
    Console.WriteLine(e);
}
Run Code Online (Sandbox Code Playgroud)

这会产生错误:

错误CS1109:扩展方法必须在顶级静态类中定义; 扩展是一个嵌套类

我猜测ScriptCS将csx包装在一些导致扩展嵌套的类中,有什么方法可以解决这个问题吗?

.net c# extension-methods scriptcs

16
推荐指数
2
解决办法
1314
查看次数

用户在使用Silverlight时遇到问题吗?

我的小组正在考虑将我们的Web UI平台从ASP.net切换到Silverlight,原因有几个.需要说明的是,这些是为我们的用户提供服务的商业网站,我们自己开发和托管它们.

有没有人将其业务/内部网网站从传统的基于服务器的Web技术(如ASP.net)切换到Silverlight?或者您是否已将Silverlight添加到您的网站?如果是这样...

  • 您的用户是否抱怨或拒绝安装Silverlight?
  • 是否有大量用户无法安装Silverlight?
  • 他们是否评论过Silverlight UI的外观或响应能力?
  • 他们还有什么评论?

简而言之,如果我开始在我的页面上使用Silverlight,我的网站的用户会变得怪异吗?
如果您的回答是"这取决于",请了解决定因素是什么.

顺便说一句,是否有一种简单的方法可以检测有多少用户安装/已安装Silverlight?

编辑:
感谢您的答案到目前为止!我可能会到达,但有没有人有部署Silverlight应用程序的具体经验?我想知道是否有人经历过这个以及他们的用户是否有任何重大问题.

.net silverlight user-interface

9
推荐指数
2
解决办法
2848
查看次数

LINQ选择Distinct而忽略XML字段

我有一个复杂的LINQ查询(使用LINQ 2 EF)可以返回重复的结果,因此我使用该.Distinct()方法来避免重复.这是骨架:

var subQuery1 = // one query...
var subQuery2 = // another query...
var result = subQuery1.Distinct().Union( subQuery2.Distinct() ).ToArray();
Run Code Online (Sandbox Code Playgroud)

每个子查询将一个公共用户表与另一个表连接起来并执行"where"查询,稍后将结果组合在一起.Union(...).这个工作正常,直到表被修改为包含XML列,这导致此异常:

不能将xml数据类型选为不同的,因为它不具有可比性

在这种情况下,我不关心XML列是否在结果中是等效的.实际上我只需要确保主键UserId在结果中是不同的.

有没有办法使用Distinct()但忽略XML列或更简单的方法来确保我UserId以有效的方式从结果中删除记录?理想情况下,这不会从数据库中检索重复记录,也不需要进行后处理来删除重复记录.

更新: 我发现如果我提前将查询序列化到数组,则不需要任何类型的比较器,因为Linq2Objects没有XML不同的选择问题.例如,我可以这样做:

var subQuery1 = // one query...
var subQuery2 = // another query...
var result = 
   subQuery1.Distinct().ToArray().Union( 
      subQuery2.Distinct().ToArray() )
   .ToArray();
Run Code Online (Sandbox Code Playgroud)

所以我真正想要的是一种避免序列化中间查询并直接执行Linq2Entities调用的方法,该调用不会获取具有重复UserIds的记录.感谢迄今为止的所有答案.

c# xml linq linq-to-entities distinct

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

由于MSVCR110.dll,MS Visual Studio 2012终端无法启动

当我尝试运行MVS 2012时,我总是收到错误 - 在库DLL MSVCR110.dll中找不到过程_crtCreateSymbolicLinkW的入口点.我已经从我的其他计算机复​​制了这个dll文件,其中一切正常,但它没有帮助0_o.操作系统 - Windows 7.

windows dll crt visual-studio-2012

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

.net运行时 - Silverlight运行时=?

我已经google了一下,我还没有找到一个很好的列表,列出了.net CLR中的哪些类没有包含在'CoreCLR'又名Silverlight中.

什么是Windows .net框架中缺少的Silverlight?

另外,.net Framework没有任何Silverlight运行时具有的功能吗?

.net silverlight clr frameworks silverlight-2.0

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

jQuery:淡出 - 做点什么 - 淡出模式

我似乎经常编写类似于这样的模式的jQuery代码:

淡出==>做幕后的事情==>淡入下
图:

/// <reference path="jquery-1.4.2.js" />
/// <reference path="jquery-1.4.2-vsdoc.js" />
/// <reference path="jquery.validate-vsdoc.js" />
var fade = "slow";

$(document).ready(function () {

    // Some event occurs
    $("#Trigger").change(function () {
        var id = $(this).find(":selected").val();        

        // Fade out target while I do something
        $("#Target").fadeOut(fade, function () {
            if (id != "") {

                // Do Something
                $("#Target").load(
                    "/Site/Controller/Action/"+id, null,
                    function () {

                        // Fade in Target
                        $("#Target").fadeIn(fade);
                    });
            }
        });
    });
});
Run Code Online (Sandbox Code Playgroud)

这工作正常,但回调层次结构变得非常深,我只是想知道是否有更简单的方法来做这个或更好的技术,不会导致这么多级别的回调

jquery user-interface refactoring effects

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

Ruby:将一个方法添加到输入参数的类中

我只是在探索ruby,并且想知道将一个方法添加到对象类的理论可能性.例如,定义一个接受参数的方法,并将方法添加到该参数的类中(而不仅仅是参数对象本身).像这样的例子:

class SomeClass
end

class AnotherClass
end

alpha = SomeClass.new
beta = AnotherClass.new

def AddHelloMethodTo param

 # This is where I'm trying to
 # add a method to the class of the parameter
 def param.class.Hello 
  "Hello"
 end

end

AddHelloMethodTo alpha
AddHelloMethodTo beta

gamma = AnotherClass.new

alpha.Hello
beta.Hello
gamma.Hello
Run Code Online (Sandbox Code Playgroud)

(对不起,如果我有语法错误/错别字我真的很新!)
请注意我怎么不调用AddHelloMethodToon gamma但我希望Hello被定义,因为我把它添加到了类中.
这可能吗?

ruby metaprogramming dynamic

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

推荐的OpenGL/GLUT参考

在您学习的时候,OpenGL/GLUT参考对于日常编程是否有用?

理想情况下,我正在寻找具有大量C++示例代码的东西,以帮助我学习开发OpenGL应用程序以及类似于MSDN为.net编程提供的API的详细信息.

如果没有一站式服务,那么请列出我应该使用的参考资料集以及每个参考资料的优势.

c++ opengl glut reference

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