Tôi có một truy vấn SQL trả về chỉ một trường - một ID của loại INT.Int32.TryParse() hoặc (int?) Command.ExecuteScalar()
Và tôi phải sử dụng nó làm số nguyên trong mã C#.
Cách nào nhanh hơn và sử dụng ít bộ nhớ hơn?
hoặc
int? id = (int?)command.ExecuteScalar();
if(id.HasValue)
{
// use id.Value
}
hoặc
int? id = command.ExecuteScalar() as int?;
if(id.HasValue)
{
// use id.Value
}
Tôi biết điều này là cũ, nhưng có liên quan Donald Knuth trích dẫn: "Người lập trình lãng phí một lượng lớn thời gian suy nghĩ hoặc lo lắng về tốc độ của các phần không quan trọng trong chương trình của họ. Chúng ta nên quên đi hiệu quả nhỏ, khoảng 97% thời gian: tối ưu hóa sớm là gốc rễ của mọi điều ác. Tuy nhiên, chúng ta không nên bỏ qua cơ hội của chúng ta trong 3% quan trọng đó. " –
Hey @DannyNeumann, nói chung, tôi không nghĩ rằng nó làm cho nhiều ý nghĩa để đăng nó ở đây vì nó là một câu hỏi từ năm 2009. Đặc biệt, viết mã hiệu quả vẫn còn quan trọng. Và đây là cách tôi học được để làm như vậy.Tôi hàng ngày thấy mã khủng khiếp, khủng khiếp mà sẽ phù hợp với báo giá của Knuth hoàn toàn tốt. Điều đó đang được nói, người ta không nên dành nhiều thời gian vào tối ưu hóa sớm của các phần không quan trọng, nhưng trong cùng một thời gian không nên viết các phần không quan trọng không hiệu quả. – abatishchev