小编Tim*_*Tim的帖子

如何在 csproj 构建输出中包含 Nuget 包中的 XML 文档

我有一个包含 XML 文档文件的 nuget 包。

packages/MyPackage.1.0.0/lib/net472/MyPackage.xml

但是,当我构建我的项目时,我想在输出中包含这个 xml 文件。

所以当我:

dotnet MyProj.csproj -c Release

我想得到:

> ls bin/Release/net472
MyProj.dll
MyPackage.dll
MyPackage.xml
Run Code Online (Sandbox Code Playgroud)

然而,它永远不会出现。我怎么才能得到它?

msbuild csproj nuget nuget-package packagereference

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

在LINQ Expression for SQL中进行空检查

我的任务是为Automapper创建LINQ表达式,它必须能够转换为SQL表达式.这意味着没有方法调用,这是我遇到问题的地方.

我有两列感兴趣的记录 - ProposedStartDateActualStartDate.我想得到ActualStartDate它是否存在,如果为null然后得到ProposedStartDate.

     .ForMember(d => d.StartDate, opt => opt.MapFrom(s => (from foo in s.foo
                                                           orderby foo.ProposedStartDate ascending
                                                           select foo.ProposedStartDate).LastOrDefault()))
Run Code Online (Sandbox Code Playgroud)

到目前为止,我在那里,但不确定如何检查空值并ActualStartDate以安全的方式拉出来.任何帮助都会很棒.

谢谢.

c# linq linq-to-entities expression automapper

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

获取自身内部的类函数名称

我正在尝试在我的打字稿程序中设置日志记录,使用log4javascript.

但是我不知道如何使用反射(而不是手动输入)检索函数名称。

理想情况下,我想模仿我所做的C#

public class Foo 
{
    private static readonly log4net.ILog logger = log4net.LogManager.GetLogger(typeof(Foo));

    public Foo()
    {
    }

    public FooMethod()
    {
        try {
            logger.Logger.Log(this.GetType(), log4net.Core.Level.Trace, "Entering" + MethodBase.GetCurrentMethod().Name, null);
            // code
        }
        catch (e) {
            logger.Logger.Log(this.GetType(), log4net.Core.Level.Debug, ex.Message, null);
        }
        finally {
            logger.Logger.Log(this.GetType(), log4net.Core.Level.Trace, "Exiting" + MethodBase.GetCurrentMethod().Name, null);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点Typescript?我所能做的就是获取类名。

class Foo {
    private static logger: log4javascript.Logger = log4javascript.getLogger(getName(Foo));

    constructor() {
    }

    FooFunction() {
        try {
            SymDataSource.logger.trace("Entering: " + getName(Foo.prototype.FooFunction));
            // code …
Run Code Online (Sandbox Code Playgroud)

javascript reflection log4javascript typescript

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

如何将通用字典转换为已知类型?

使用反射,我试图抓住一个类字段并填充它们.目前我有它检测a的实例Dictionary<,>并创建一个Dictionary<object,object>填充.之后它尝试更改类型,但这不起作用并且无法转换:

// Looping through properties. Info is this isntance.
// Check is a dictionary field.
Dictionary<object, object> newDictionary = new Dictionary<object, object>();

// Populating the dictionary here from file.
Type[] args = info.PropertyType.GetGenericArguments();
info.GetSetMethod().Invoke(data, new object[]
    {
        newDictionary.ToDictionary(k => Convert.ChangeType(k.Key, args[0]),
                                   k => Convert.ChangeType(k.Value, args[1]))
    });
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?谢谢.

c# reflection casting

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