小编Kev*_*nle的帖子

Erlang:你如何向自己发送handle_info消息?

除了timer:send_after/2,有没有办法向gen_server发送handle_info消息?

erlang

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

.NET:使用通用接口参数调用Assembly obj的GetInterface方法

我有以下界面:

public interface PluginInterface<T> where T : MyData
{
    List<T> GetTableData();
}
Run Code Online (Sandbox Code Playgroud)

在一个单独的程序集中,我有一个实现此接口的类.实际上,实现此接口的所有类都在单独的程序集中.原因是将我的应用程序设计为插件主机,其中插件可以在将来完成,只要它们实现上述接口并将程序集DLL复制到相应的文件夹即可.

我的应用程序通过首先加载程序集来发现插件并执行以下操作:

List<PluginInterface<MyData>> Plugins = new List<PluginInterface<MyData>>();
string FileName = ...;//name of the DLL file that contains classes that implement the interface
Assembly Asm = Assembly.LoadFile(Filename);
foreach (Type AsmType in Asm.GetTypes())
{
    //Type type = AsmType.GetInterface("PluginInterface", true);   //
    Type type = AsmType.GetInterface("PluginInterface<T>", true);
    if (type != null)
    {
       PluginInterface<MyData> Plugin = (PluginInterface<MyData>)Activator.CreateInstance(AsmType);

       Plugins.Add(Plugin);
    }
}
Run Code Online (Sandbox Code Playgroud)

问题是因为我通过Type type = ...来获取类型的行似乎都不起作用,因为两者似乎都是null.我觉得通用以某种方式造成了麻烦.你知道为什么吗?

c# plugins

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

使用Asp.Net文本框的Bootstrap Datepicker

也许这将是一个愚蠢的问题,但我无法处理我的问题.我在这里检查了所有的问题和答案,但我没有发现任何线索.无论如何,我想在asp.net文本框中使用bootstrap datepicker.当我在没有runat ="server"标签的输入中使用它时,我看到datepicker出现了,但是当我尝试将它与带有runat ="server"标签的文本框一起使用时,日期选择器没有显示.有关如何解决这个问题的任何想法?

<asp:TextBox ID="DateTextbox" runat="server" CssClass="m-wrap span12 date form_datetime"></asp:TextBox>

    <script type="text/javascript">
    $(document).ready(function () {
        var dp = $("#<%=DateTextbox.ClientID%>");
            dp.datepicker({
            changeMonth: true,
            changeYear: true,
            format: "dd.mm.yyyy",
            language: "tr"
        });
    });
    </script>
Run Code Online (Sandbox Code Playgroud)

谢谢你的回答.

asp.net twitter-bootstrap

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

快速游乐场中单表达式闭包的隐式返回

根据Apple的Swift书,而不是

let names = ["Chris", "Alex", "Ewa", "Barry", "Daniella"]
var reversed = sorted(names, { s1, s2 in return s1 > s2 })
Run Code Online (Sandbox Code Playgroud)

因为闭包的主体包含一个返回Bool 的单个表达式s1> s2,所以没有歧义,因此可以省略return关键字:

reversed = sorted(names, { s1, s2 in s1 > s2 })
Run Code Online (Sandbox Code Playgroud)

嗯,这在Playground中不起作用.Playground中的错误表示不明确使用运算符'>'.

更新:同样,这个

reversed = sorted(names, { $0 > $1 })
Run Code Online (Sandbox Code Playgroud)

不起作用.同样的错误.这个

reversed = sorted(names, { return $0 > $1 })
Run Code Online (Sandbox Code Playgroud)

确实.

更新2:在看到Mike S的回答后,我确信该错误可能是由于Swift String和NSString.我试过了

let nums = [3, 5, 1, 2, 10, 9]
var dec = …
Run Code Online (Sandbox Code Playgroud)

swift

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

在 fp-ts 的管道中混合 Either 和 TaskEither

当没有一个函数是异步的时,我有以下程序可以正常工作。

interface Product {
  count: number
  pricePerItem: number
}

interface Tax {
  tax: number
}

interface Delivery {
  delivery: number
}

interface PTD { //ProductTaxDelivery
  p: Product
  t: number
  d: number
}

function getProduct(): Either<Error, Product> {
  return E.right({ count: 10, pricePerItem: 5 })
}

function getTax(p: Product): Either<Error, number> {
  return E.right(p.pricePerItem * p.count * 0.085)
}

function getDelivery(p: Product): Either<Error, number> {
  return  E.right(p.count * 0.05)
  //or maybe return E.left(Error('some error in delivery happened'))
}
function run(): Either<Error, …
Run Code Online (Sandbox Code Playgroud)

functional-programming fp-ts

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

正则表达式:替换以'.js'结尾但不是'min.js'的字符串的后缀

假设infile是一个包含输入文件名称的变量,同样也是输出文件的outfile.如果infile以.js结尾,我想用.min.js替换,这很容易(我认为).

outfile = re.sub(r'\ b.js $','.min.js',infile)

但我的问题是,如果infile以.min.js结尾,那么我不希望替换发生.(否则,我最终将使用.min.min.js)如何使用正则表达式实现此目的?

PS:这不是功课.如果你很好奇这是为了什么:这是一个小的python脚本来对目录中的JavaScript文件进行大规模压缩.

python regex

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

使用LINQ在JSON中创建树层次结构

我有一个随机顺序的一些名单的平面列表.是否可以编写单个LINQ语句以在JSON中创建树层次结构,以便根据以下示例说明的规则对它们进行分组:

输入:

"Banana", "Apple", "Cheery", "Lemon", "Orange", ...
Run Code Online (Sandbox Code Playgroud)

输出:

{
    "A, B, C": "Apple, Banana, Cherry",
    "D, E, F" : "",
    ...
    "J, L, M": "Lemon",
    "N, O, P": "Orange",
    ...
}
Run Code Online (Sandbox Code Playgroud)

c# linq json

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

使用视图提高查询性能

我在SQL Server数据库中有一个包含10多万条记录的大表.该表包含美国所有50个州的特定类型的数据.因此,如果我从这个表创建50个视图,每个状态一个,那么从我的应用程序进行查询的性能是否会得到改善?其他建议?

database sql-server rdbms query-performance

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

可以打开DB4o文件进行多次查询,插入,更新吗?

这是我考虑使用DB4o的方式.当我需要查询时,我会打开文件,阅读并关闭:

using (IObjectContainer db = Db4oFactory.OpenFile(Db4oFactory.NewConfiguration(), YapFileName))
{
    try
    {
        List<Pilot> pilots = db.Query<Pilot>().ToList<Pilot>();
    }
    finally
    {
       try { db.Close(); }
       catch (Exception) { };
    }
}
Run Code Online (Sandbox Code Playgroud)

稍后,当我需要插入时,那么

using (IObjectContainer db = Db4oFactory.OpenFile(Db4oFactory.NewConfiguration(), YapFileName))
{
    try
    {
        Pilot pilot1 = new Pilot("Michael Schumacher", 100);
        db.Store(pilot1);
    }
    finally
    {
       try { db.Close(); }
       catch (Exception) { };
    }
}
Run Code Online (Sandbox Code Playgroud)

通过这种方式,我认为只要在需要时将文件打开,我就会保持文件更整洁,并且大部分时间都关闭它.但我一直得到InvalidCastException

Unable to cast object of type 'Db4objects.Db4o.Reflect.Generic.GenericObject' to type 'Pilot'
Run Code Online (Sandbox Code Playgroud)

使用DB4o的正确方法是什么?

db4o

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

编写一个函数来计算Erlang中列表中的整数之和

因为我只是通过阅读书籍和自己的练习(而不是做作业)来学习Erlang,所以即使是我在标题中提到的最简单的任务,我也在努力学习.

这就是我所做的:

我使用以下代码行创建了一个名为sum.erl的文件:

-module(mysum).
-export([mysum/1]).

mysum(L) -> 
   mysum(L, 0).

mysum([H|T], acc) -> 
   mysum(T, H + acc); 

mysum([], acc) ->
   acc.
Run Code Online (Sandbox Code Playgroud)

然后我编译:

erl sum.erl
Run Code Online (Sandbox Code Playgroud)

这把我带到了一个壳.在那里,我键入:

1> L = [1, 3, 7].
[1, 3, 7]
2> mysum(L).
** exception error: undefined shell command mysum/1
3>sum:mysum(L).
** exception error: undefined function sum:mysum/1
Run Code Online (Sandbox Code Playgroud)

说什么 ?为什么我会收到这些错误,即使错误消息略有不同,我想也许他们的意思相差甚远?

更新:新代码

-module(sum).
-export([sum/1]).

sum(L) -> 
   sum(L, 0).

sum([H|T], Acc) -> 
   sum(T, H + Acc); 

sum([], Acc) ->
   Acc.
Run Code Online (Sandbox Code Playgroud)

然后

1>L = [1,2,3].
[1,2,3]
2>sum:sum(L).
** exception error: no function …
Run Code Online (Sandbox Code Playgroud)

erlang

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