小编And*_*ock的帖子

图书馆确定名词的不定冠词?

是否有任何.NET库用于确定名词的Indefinite Article

我的粗略尝试是在下面,这可能适用于我的99%的使用(这是可以接受的)只是想知道是否有任何已建立的替代方案?

public static string GetIndefinateArticle(string noun)
{
    if(string.IsNullOrEmpty(noun))
        return noun;

    var first = noun[0];

    if(first == 'a' ||
        first == 'e' ||
        first == 'i' ||
        first == 'o')
        return "an " + noun;

    return "a " + noun;
}
Run Code Online (Sandbox Code Playgroud)

更新:Eamon在评论中指出了一个重复的问题:如何正确地在单词前加上"a"和"an"?我会把这个Q留在这里然后打开,因为我还没有真正得到答案.

c#

9
推荐指数
3
解决办法
1633
查看次数

iOS 11 Cookie更改 - 寻求技术说明

iOS 11显然对cookie的工作方式带来了重大变化.

有人能否为我提供有关确切行为变化的全面,技术详细的描述?

如果我们都需要修改我们网站的工作方式来支持这一点,那么这就像是一个重要的问题/主题,以简洁的细节作为每个人的参考.

我能找到的最好的文章是这样的:

https://adexchanger.com/data-driven-thinking/apples-upcoming-safari-changes-will-shake-ad-tech/

cookies ios11

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

测试HtmlHelper时如何解决图像路径问题?

我在测试HTML Helper时遇到了一个问题.基本上我正在创建一个包含大量行,列和不同类型数据的网格.在标题中还有一个图像,用于通知用户数据按哪个列排序.但是,当我现在正在编写我的测试时(太迟了,但迟到总比没有好?!),我得到了这个错误:

"应用程序相对虚拟路径'〜/ Images/SortingArrowUp.png'不能成为绝对路径,因为应用程序的路径未知."

 var imgPath = VirtualPathUtility.ToAbsolute("~/Images/SortingArrowUp.png");
Run Code Online (Sandbox Code Playgroud)

我该怎么解决这个问题.我可以理解在测试期间这可能是一个什么问题,并且图像可能不可用而且所有这些,但是这样做的正确方法是什么?

c# asp.net-mvc unit-testing html-helper virtual-path

8
推荐指数
2
解决办法
6636
查看次数

如何在运行时在c#中转换泛型类型

我需要在运行IEnumerable<IEnumerable<T>>时才知道T.

我已经建立了我的收藏品:

new List<List<object>>() 
Run Code Online (Sandbox Code Playgroud)

内部列表中的所有对象都是a T

但是,由于CO /逆变的(永远记住它是!)我ListList小号心不是一个IEnumerableIEnumerable秒.

我该怎么办?

我已经尝试使用Convert.ChangeType,但它的呻吟声是List不是IConvertible

线索:阅读问题.再次.我说我只T在运行时知道.

c# generics reflection

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

Git分支:跟踪上游

我不知道我是否误用了Git,或者我是否有配置问题,所以任何清晰度都会受到赞赏:)

我将我的github repos克隆到机器A和B上,然后在机器AI上:

git checkout -b branchA
// make edits
git add .
git commit -am "initial"
git push
Run Code Online (Sandbox Code Playgroud)

然后在机器B上我做

git pull
git checkout branchA
// make edits
git commit -am "edits"
git push
Run Code Online (Sandbox Code Playgroud)

在机器A我然后做:

git pull
Run Code Online (Sandbox Code Playgroud)

但它说:

There is no tracking information for the current branch
Run Code Online (Sandbox Code Playgroud)

所以我必须这样做:

git branch --set-upstream branchA origin/branchA
Run Code Online (Sandbox Code Playgroud)

:/为什么我必须设置上游,当它最初将它推送到origin/branchA没有问题?

这是怎么回事?谢谢

我正在使用msygit 1.8.在窗户上

PS当我pull在机器B上执行时,为什么branchA默认情况下不跟踪新分支?git branch不显示它(但它确实-r).我可以默认跟踪所有新的远程分支pull?

git

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

JSON.Net默认情况下将枚举序列化为字典中的字符串 - 如何将其序列化为int?

为什么我的序列化JSON最终为

{"Gender":1,"Dictionary":{"Male":100,"Female":200}}
Run Code Online (Sandbox Code Playgroud)

即为什么enums序列化为它们的值,但是当它们形成时它们是字典的关键字,它们被转换为它们的键?

如何使它们成为字典中的整数,为什么这不是默认行为?

我希望得到以下输出

{"Gender":1,"Dictionary":{"0":100,"1":200}}
Run Code Online (Sandbox Code Playgroud)

谢谢

    public void foo()
    {
        var testClass = new TestClass();
        testClass.Gender = Gender.Female;
        testClass.Dictionary.Add(Gender.Male, 100);
        testClass.Dictionary.Add(Gender.Female, 200);

        var serializeObject = JsonConvert.SerializeObject(testClass);

        // serializeObject == {"Gender":1,"Dictionary":{"Male":100,"Female":200}}
    }

    public enum Gender
    {
        Male = 0,
        Female = 1
    }

    public class TestClass
    {
        public Gender Gender { get; set; }
        public IDictionary<Gender, int> Dictionary { get; set; }

        public TestClass()
        {
            this.Dictionary = new Dictionary<Gender, int>();
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

c# json.net

8
推荐指数
2
解决办法
2868
查看次数

流畅的NHibernate类型的多种约定

我使用Fluent NHIbernate中的AutoPersistenceModel来映射我的所有实体,并且一切正常:D

但是,我的几个对象都有

public virtual IList<Comment> Comments { get; set; }
Run Code Online (Sandbox Code Playgroud)

在数据库中有一个注释表,每个具有上述代码的实体都有自己的注释链接表.

目前我正在做的是:

public class ContractMappingOverride : IAutoMappingOverride<Contract>
{
    public void Override(AutoMap<Contract> mapping)
    {
        mapping.HasManyToMany(x => x.Comments)
            .WithTableName("Comment_Contract");
Run Code Online (Sandbox Code Playgroud)

对于每个实体.

有没有办法我可以设置一个约定,其中IList <Comment>的所有映射都自动连接到上面的表名约定多少?

谢谢

安德鲁

fluent-nhibernate

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

如何解决这个组合算法问题

N有人必须参加T考试.每次考试都需要"一些"时间,例如30分钟(没有提前完成的事情).考试必须在考官面前进行.

我需要安排每个人在整个时间段内在考官面前进行每次考试,但避免午休,在最短的时间内使用最少数量的考官(即没有/最小考官闲置)

有以下限制:

  • 没有人可以同时在两个地方
  • 每个人必须参加一次考试
  • 没有人应该由同一位考官两次检查

我意识到最佳解决方案可能是NP-Complete,并且我可能最好使用遗传算法来获得最佳估计(类似于此?座位计划软件建议(这样的野兽甚至存在吗?)).

我对遗传算法如何工作感到满意,我正在努力解决的是如何以编程方式对问题进行建模,以便我可以通过基因操作参数.

如果每次考试花费相同的时间,那么我将时间段划分为这些长度,然后简单地创建一个时间矩阵与审查员并将候选人放入.但是因为每次测试的时间不一定是同样,我对如何处理这个问题有点失落.

目前我这样做:

  • 列出每个候选人和考试之间需要进行的所有"测试"
  • 从有尽可能多的审查员开始,有测试
  • 反复遍历所有审查员,每个审查员:找到一个符合审查员资格的计划外测试(根据限制)
  • 继续,直到所有可以安排的测试,是
  • 如果有任何未安排的测试,请增加审查员人数并重新开始.

我正在寻找关于如何处理这个问题的更好的建议,因为它目前感觉相当粗糙.

language-agnostic algorithm genetic-algorithm

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

git全局配置问题

不知何故,我的全局git(msysgit)设置user.nameuser.email(以及上帝知道还有什么)设置为最近前同事的详细信息.

当我尝试改变它们时,我得到了 could not commit to u://.gitconfig

如果我尝试u://.gitconfig通过git bash 创建然后我得到permission denied.

C:\Users\<My Username>\
Run Code Online (Sandbox Code Playgroud)

不包含对git的引用.

我已经尝试卸载,搜索注册表和我的文件系统所有对git的引用,我找不到任何(Windows文件搜索虽然是垃圾).

这到底是怎么回事?为什么即使重新安装后这个家伙的细节仍然是全局设置???

谢谢

git

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

如何使用给定URL的外部查找SVN repo中的所有条目

可能重复:
递归列出所有svn:externals?

我需要移动许多项目引用的组件的位置svn:external.

如何轻松查找具有svn:external此URI的所有位置?

svn

7
推荐指数
2
解决办法
4300
查看次数