给定一个列表,首选哪个方法来确定里面的元素数量?
var myList = new List<string>();
myList.Count
myList.Count()
Run Code Online (Sandbox Code Playgroud) 我可以做SELECT TOP(200)......但为什么BOTTOM(200)呢?
好吧,不要进入哲学我的意思是,我怎么能做相当于TOP(200)但相反(从底部开始,就像你期望BOTTOM做的那样......)?
如果我们有一个继承自多个接口的类,并且接口具有相同名称的方法,那么我们如何在我的类中实现这些方法?我们如何指定实现哪个接口的方法?
我发现使用IDE中给出的黑色主题进行编码真的很难visual studio 2012.无论如何我有可能回到旧的灰色主题或者无论如何我可以让它看起来更白一点?
链接:
http://tortoisesvn.net/docs/nightly/TortoiseSVN_en/tsvn-howto-rollback.html
描述了在错误提交后回滚SVN目录的两种方法.这两个选项有什么区别
Revert changes from this revision
Revert to this revision
Run Code Online (Sandbox Code Playgroud)
作为测试,我添加了一个文件,使用"从此版本中恢复更改"回滚,并为"恢复到此版本"执行相同的过程,并且SVN日志的状态没有区别.
我错过了什么吗?
我想看一个函数运行多长时间.所以我在表单上添加了一个计时器对象,我出来了这段代码:
private int counter = 0;
// Inside button click I have:
timer = new Timer();
timer.Tick += new EventHandler(timer_Tick);
timer.Start();
Result result = new Result();
result = new GeneticAlgorithms().TabuSearch(parametersTabu, functia);
timer.Stop();
Run Code Online (Sandbox Code Playgroud)
和:
private void timer_Tick(object sender, EventArgs e)
{
counter++;
btnTabuSearch.Text = counter.ToString();
}
Run Code Online (Sandbox Code Playgroud)
但这并不算什么.为什么?
声明JavaScript数组时"{}"和"[]"之间有什么区别?通常我会声明
var a=[];
Run Code Online (Sandbox Code Playgroud)
声明数组的含义是什么? var a={}
这是代码:
using (var context = new AventureWorksDataContext())
{
IEnumerable<Customer> _customerQuery = from c in context.Customers
where c.FirstName.StartsWith("A")
select c;
var watch = new Stopwatch();
watch.Start();
var result = Parallel.ForEach(_customerQuery, c => Console.WriteLine(c.FirstName));
watch.Stop();
Debug.WriteLine(watch.ElapsedMilliseconds);
watch = new Stopwatch();
watch.Start();
foreach (var customer in _customerQuery)
{
Console.WriteLine(customer.FirstName);
}
watch.Stop();
Debug.WriteLine(watch.ElapsedMilliseconds);
}
Run Code Online (Sandbox Code Playgroud)
问题是,Parallel.ForEach与常规相比需要大约400ms ,大约foreach需要40ms.我究竟做错了什么,为什么这不能像我期望的那样工作?
请考虑以下代码:
namespace DisposeTest
{
using System;
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Calling Test");
Test();
Console.WriteLine("Call to Test done");
}
static void Test()
{
DisposeImplementation di = new DisposeImplementation();
}
}
internal class DisposeImplementation : IDisposable
{
~DisposeImplementation()
{
Console.WriteLine("~ in DisposeImplementation instance called");
}
public void Dispose()
{
Console.WriteLine("Dispose in DisposeImplementation instance called");
}
}
}
Run Code Online (Sandbox Code Playgroud)
即使我在Test();调用之后放置了一个等待循环,Dispose也永远不会被调用.所以这很糟糕.我想编写一个简单易用的类,以确保清理所有可能的资源.我不想把这个责任交给我班级的用户.
可能的解决方案:使用using或调用自己处理(基本相同).我可以强制用户使用吗?或者我可以强制调用处理吗?
呼叫GC.Collect();后Test();也不起作用.
把di以null不调用任何处置.解构器可以工作,因此对象在退出时会被解构Test()
好的,现在很清楚!
谢谢大家的答案!我会在评论中添加警告!
c# ×6
.net ×4
arrays ×1
casting ×1
count ×1
database ×1
declaration ×1
dispose ×1
ide ×1
idisposable ×1
inheritance ×1
interface ×1
javascript ×1
keyword ×1
linq ×1
list ×1
methods ×1
object ×1
performance ×1
revert ×1
select ×1
sql ×1
sql-server ×1
stopwatch ×1
svn ×1
themes ×1
timer ×1
tortoisesvn ×1