我已经有这个问题很长一段时间了.我有一个界面,比如说ITransaction.现在我需要创建一个名为的接口IVolatileTransaction<T>,它必须实现ITransaction,但T也必须是一个ITransaction.
public interface IVolatileTransaction<T> : ITransaction
public interface IVolatileTransaction<T> where T : ITransaction
Run Code Online (Sandbox Code Playgroud)
问题是,我需要两者.有任何想法吗?
我有一个单元测试课,我在工厂做一些测试.在这个单元测试中,我模拟了一些数据.在模拟数据中,我在NumberModel中有NumberModel(父模型),我有一个名为ReferenceModel的嵌套模型列表.我已经在同一行中为它们添加值时实例化了许多列表,但是当我尝试用我的嵌套模型列表执行此操作时,我发现我不能.
这是单元测试类的片段,我在这里模拟我的数据.
_numberModel = new NumberModel()
{
value1 = 1,
value2 = x,
referenceList = new List<ReferenceModel> { ID = 55, NumberType = Mean } < -- These show undefined
};
Run Code Online (Sandbox Code Playgroud)
我在这做错了什么?我是否需要深入查看父模型中的嵌套列表,以便定义嵌套的模型列表?
我试图连接两列但出现问题....我的输出没有显示.
String Query = " SELECT pa_forename , pa_surname FROM [ICPS].[dbo].[parking_attendants] order by pa_forename ";
SqlConnection conDataBase = new SqlConnection(conString);
SqlCommand cmdDataBase = new SqlCommand(Query, conDataBase);
SqlDataReader myReader;
try
{
conDataBase.Open();
myReader = cmdDataBase.ExecuteReader();
while (myReader.Read())
{
string pa_forename = myReader["pa_forename " +"," + "pa_surname"].ToString();
comboBox1.Items.Add(pa_forename);
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
Run Code Online (Sandbox Code Playgroud) 我有一个像这样的清单
var myList = new List<object> {
new { Day = "Sunday", ID = 15 },
new { Day = "Monday", ID = 20 },
new { Day = "Tuesday", ID = 80 }
};
Run Code Online (Sandbox Code Playgroud)
现在我想获得给定ID的前一天.例如80导致星期一和星期日应该是20的结果.列表按ID排序!
我有一个简单的方法来确定日值吗?理想的是一个linq解决方案.
我想更改包含数字的文本.数字的第一个和最后一个字符需要保留,其他字符应替换为a *.与文本混合的数字应保持不变.
我有这个代码:
string result = Regex.Replace(input, @"(?<=[\d]{1})[\d]*(?=[\d]{1})",
m => new string('*', m.Length));
Run Code Online (Sandbox Code Playgroud)
用这个输入:
"Lorem 1 ip234sum 22 dolor 3234445 sit amet, adipiscing 1234"
Run Code Online (Sandbox Code Playgroud)
应该显示这个结果:
"Lorem 1 ip234sum 22 dolor 3*****5 sit amet, adipiscing 1**4"
Run Code Online (Sandbox Code Playgroud)
但是,目前的输出是:
"Lorem 1 ip2*4sum 22 dolor 3*****5 sit amet, adipiscing 1**4"
Run Code Online (Sandbox Code Playgroud)
如你所见,它也不正确地运作ip234sum.如何让它忽略不完全数字的字符串部分?
string str="Customer was charged £10,000 and £11,000 for the same service in June and July respectively".
Run Code Online (Sandbox Code Playgroud)
我想从字符串中获取第二个金额.
我使用下面的表达式,但它只给出了10,000英镑的第一个值.
string m = Regex.Match(str, @"\£[^ ]+").Value.ToString();
Run Code Online (Sandbox Code Playgroud)
请让我知道如何跳过第一个并直接选择第二个值.
我有一个大字符串要读,它总是不同的,但一个字总是一样的.这个词是MESSAGE,所以如果我的字符串阅读器遇到这个词,它必须将整个字符串写入光盘.我做了一些代码,但它没有工作,if段永远不会触发,这里有什么问题?
string aLine;
StringReader strRead = new StringReader(str);
aLine = strRead.ReadLine();
if (aLine == "MESSAGE")
{
//Write the whole file on disc
}
Run Code Online (Sandbox Code Playgroud) 这是我目前的代码:
Parallel.ForEach(Arguments, Argument =>
{
if (Argument != Command_Name)
{
WebRequest web_request = WebRequest.Create("https://www.aol.com/?command=1&domain=" + Argument);
web_request.Timeout = 5000;
((HttpWebRequest)web_request).UserAgent = "Mozilla Firefox 5.0";
HttpWebResponse web_response = (HttpWebResponse)web_request.GetResponse();
StreamReader response = new StreamReader(web_response.GetResponseStream(), Encoding.UTF8);
Message += Argument + " => " + response.ReadToEnd() + Environment.NewLine;
}
});
Run Code Online (Sandbox Code Playgroud)
此代码无法正常工作,我正在寻找一个小的替代品.此代码返回Message字符串中的一些参数...多线程字符串添加的好方法是什么?这就是我需要的.
更多信息:消息字符串有时会返回a,b和c,而其他消息字符串只返回a或b ...
感谢您的帮助,谢谢!
以下代码
Func<int, int> DoWork;
DoWork = x => x + 5; // ignored
DoWork += y => y + 1; // used
Console.WriteLine(DoWork(2)); // 2 + 1 = 3
Run Code Online (Sandbox Code Playgroud)
返回3,因为只处理最新添加的lambda - 以前的方法被忽略.如果是Action<>,则正在处理所有方法.
问题:是否有一个用于"添加"/ Delegate.CombineFuncs 的用例,当我每次添加另一个委托时覆盖之前的那些?
我想按照以下示例从字符串中删除单引号。
输入:“我是'微软'开发人员”
OutPut:我是Microsoft开发人员
输入:“让我们玩一场“大游戏””
OutPut:让我们玩一个大游戏
输入:“詹姆斯”计算机
输出:詹姆斯的计算机
请提出实现此目标的最佳方法。
谢谢。