小编pra*_*rab的帖子

比较两个字符串中的字符

在 C# 中,如何比较两个字符串中的字符。
例如,假设我有这两个字符串
“bc3231dsc”和“bc3462dsc”

如何以编程方式找出
以“bc3”开头并以“dsc”结尾的字符串?

所以给定的将是两个变量:

var1 = "bc3231dsc";  
var2 = "bc3462dsc";  
Run Code Online (Sandbox Code Playgroud)

比较从 var1 到 var2 的每个字符后,我希望输出为:

leftMatch = "bc3";  
center1 = "231";  
center2 = "462";  
rightMatch = "dsc";  
Run Code Online (Sandbox Code Playgroud)

条件:
1. 字符串的长度总是 9 个字符。
2. 字符串不区分大小写。

c# string string-comparison

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

使用实体框架获取特定类型的实体会返回错误-LINQ to Entities无法识别方法'System.Type GetType()'

我正在尝试过滤出某种类型的实体。我正在使用实体框架,并且有一个父实体,以及从该父实体继承的各种子代。我正在尝试过滤掉其中一个孩子。

例如,我具有以下结构:

  • 地址:实体
    • 邮编:地址
    • 街道地址

用户实体具有对一个地址的引用。如何获取与PostCode类型的地址相关联的用户列表?

即我试过:

 var query = from User p in context.Users
                        where p.Address.GetType() == typeof(PostCode)
                        select p;
Run Code Online (Sandbox Code Playgroud)

但是我得到:

LINQ to Entities无法识别方法'System.Type GetType()',并且该方法无法转换为商店表达式。

我已经看到了几种解决方案,其中包括先获取“用户”列表,然后选择某种类型的用户。该解决方案的问题是查询首先获得所有用户。我希望我的查询包括过滤器,因为我有很多用户。

谢谢!

c# linq-to-entities entity-framework gettype asp.net-mvc-3

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

最后从字符串中删除标点字符

我有一个字符串值和标点符号字符串.我需要从字符串值中删除标点符号,直到找到除标点字符之外的字符为止.以下是要删除的输入值和标点字符的示例字符串.

示例输入字符串

1. The Indian economy.My suggestion.,..,... ...

2. The Indian economy.,,[], ..My suggestion.,..,... ...[]
Run Code Online (Sandbox Code Playgroud)

要删除的标点字符

[,.;:]
Run Code Online (Sandbox Code Playgroud)

结果替换后的字符串

1. The Indian economy.My suggestion

2. The Indian economy.,,[], ..My suggestion
Run Code Online (Sandbox Code Playgroud)

任何帮助将不胜感激.

谢谢

c# regex

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

如果否则法令不起作用

嗨我的If语句由于某种原因不能工作我希望它说无效如果用户低于0或超过100但我输入的每个数字直接到我的else语句甚至没有注意到我的if语句.

我究竟做错了什么?

        g:
        Console.WriteLine("Enter Grade: ");
        int grade = Convert.ToInt32(Console.Read());
        if (grade < 0 || grade > 100)
        {
            Console.WriteLine("Input Valid");
            Console.ReadLine();
        }
        else
        {
            Console.WriteLine("Input invalid");
            Console.ReadLine();
        }
        goto g;
Run Code Online (Sandbox Code Playgroud)

c# if-statement

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

线程与后台工作者

我正在开发 C# Windows 应用程序,我需要与设备进行通信。虽然我需要向设备发送命令并接收设备的响应。在此功能中,我需要连续发送命令并接收来自设备的响应。\

为此,使用后台工作者还是线程哪个更好?

c# windows

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

网格化IEnumerable <T>列在一起

我正在寻找最有效的方法来网格化IEnumerable<T> A每行之前的所有行IEnumerable<T> B.

例如:

A = {A,B}

B = {1,2,3}

网格划分后:

B = {A,1,B,2,A,3}

c# linq

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

以任何格式将字符串转换为datetime

目标:

想要将任何格式的日期时间转换为de-DE文化

日期时间示例:

2016年3月30日下午2:38:20

2016年4月4日上午11:08:10

我尝试了什么

protected void Page_Load(object sender, EventArgs e)
{
    string dt1Valid = CheckDateFormat("3/30/2016 2:38:20 PM");
}

public string CheckDateFormat(string checkDate)
{
    string formats1 = getFormat(checkDate);

    DateTime parsedDateTime;
    DateTimeFormatInfo ukDtfi = new CultureInfo("de-DE", false).DateTimeFormat;
    if (!DateTime.TryParseExact(checkDate, formats1, new CultureInfo("de-DE"),
                                   DateTimeStyles.None, out parsedDateTime))
    {
        return Convert.ToDateTime(parsedDateTime.ToString()).ToString(ukDtfi.ShortDatePattern + " " + ukDtfi.LongTimePattern);

    }
    else
        return "";
}
public string getFormat(string checkDate)
{
    string[] formats = {"M/d/yyyy", "MM/dd/yyyy",                                    
                    "d/M/yyyy", "dd/MM/yyyy", 
                    "yyyy/M/d", "yyyy/MM/dd",
                    "M-d-yyyy", "MM-dd-yyyy",                                    
                    "d-M-yyyy", "dd-MM-yyyy", 
                    "yyyy-M-d", "yyyy-MM-dd", …
Run Code Online (Sandbox Code Playgroud)

c# datetime cultureinfo datetime-format

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

有没有办法获得UIElementCollection中的项目?

我在网格中有一堆CheckBoxes.我想访问它们,以便我可以根据启动时的注册表值将它们设置为选中或取消选中.

我已将Grid的子项作为UIElementCollection,并过滤掉其他类型..但是,似乎没有任何方法可以访问存储在集合中的数据.有这么简单的方法吗?

c# collections wpf

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

Resource 与 EmbeddedResource 哪一个更适合图像?

我有一个包含大量图像的 WPF 应用程序。我听说“构建操作 - 嵌入式资源”将图片文件内置到程序集中,因此增加了加载它所需的内存大小。

是真的吗?我正在使用Mono.Addins项目,它仅支持加载嵌入式资源,除非我想使用其他发现+加载方法。

嵌入资源对图像有害吗?

c# wpf mono.addins

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

调用延迟加载的最有效方法

正如标题所述,我想知道调用延迟加载的对象属性的最有效方法.考虑以下类定义:

Class MyObject
{
    private _stringList = null;
    public List<string> StringList
    {
        set
        {
            _stringList = value;
        }
        get
        {
            if(_stringList == null)
            {
                _stringList = new List<string>();
                //fill the List with strings from some data source
            }
            return _stringList;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

现在我想用最昂贵的操作预加载StringList,那会是什么?

MyObject obj = new MyObject();
obj.StringList.ToString(); //?
obj.StringList.Count(); //?
obj.StringList.Equals(null); //?
Run Code Online (Sandbox Code Playgroud)

关于什么:

if(obj.StringList == null){}
Run Code Online (Sandbox Code Playgroud)

我不喜欢这种方法但看起来它比在属性上调用方法要便宜.

我正在寻找一个特定于List的答案以及一个通用的答案object.

编辑:我知道这被认为是微优化,但这不是问题的关键.我不是在问你是否喜欢我在这里做的事情.我想知道相对于CPU和/或内存使用情况这样做的最佳方法,以及一些证据表明建议的方法实际上比其他方法更好.

.net c# lazy-loading

0
推荐指数
2
解决办法
675
查看次数

字符串三元运算符语法糖

我在我的代码中这样做:

destImp.Cap = (addr.location.postcode != "?") ? addr.location.postcode : null;
destImp.Civico = (addr.location.street != "?") ? addr.location.street : null;
destImp.Localita = (addr.location.city != "?") ? addr.location.city : null;
destImp.Indirizzo = (addr.location.street != "?") ? addr.location.street : null;
Run Code Online (Sandbox Code Playgroud)

但这很麻烦且多余.有一种方法可以实现相同的结果,但语法更好?

c# syntax operator-keyword

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

FileInfo是DirectoryInfo的后代

如何检查FileInfo对象是否是DirectoryInfo的后代?

public bool IsFileDescendantOfDirectory(
    FileInfo fileInfo,
    DirectoryInfo directoryInfo)
{

}
Run Code Online (Sandbox Code Playgroud)

.net c# directoryinfo fileinfo

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