Или Cast
или Convert
:
Синтаксис для CAST
:
CAST ( expression AS data_type [ (length ) ])
Синтаксис для CONVERT
:
CONVERT ( data_type [ ( length ) ] , expression [ , style ] )
http://msdn.microsoft.com/en-us/library/ms187928.aspx
На самом деле, так как Вы попросили определенный формат:
REPLACE(CONVERT(varchar(10), Date, 102), '.', '-')
Массивы имеют фиксированный размер, что означает, что вы не можете добавить больше элементов, чем количество, выделенное во время создания. Если вам нужна коллекция с автоматическим изменением размеров, вы можете использовать List
или ArrayList
Пример:
// using collection initializers to add two products at creation time
List<Product> products = new List<Product>{new Product("One",5), new Product("Two",3) };
// then add more elements as needed
products.Add(new Product("Three",8));
Используйте список, как упоминали другие люди. Если вы настроены на массивы, используйте
Array.Resize<Product>(ref product, your new size);
. Если вы собираетесь добавлять только пару продуктов (в течение срока службы вашего массива), просто сделайте что-нибудь вроде
Array.Resize<Product>(ref product, product.Length + 1);
Если вы собираетесь добавлять много продуктов , вы можете захотеть сделать что-то похожее на то, что делает List - например:
Array.Resize<Product>(ref product, product.Length * 2);
Я думаю, вам понадобится коллекция List
, чтобы посмотреть на ваш код. Затем просто вызовите для него метод Add ()
Вы не можете добавлять элементы в массив, вам придется создать новый массив большего размера и скопировать в него элементы. Для этого есть метод, который несколько ошибочно назван Resize
, поскольку на самом деле он не изменяет размер массива:
Array.Resize<product>(ref value, 5);
Если вы хотите добавить элементы в коллекцию, вы должны вместо этого использовать List:
private List<product> value = new List<product>();
value.Add(new product("One",5));
value.Add(new product("Two",3));
value.Add(new product("Three",8));
value.Add(new product("Four",2));
Изменить:
Если вы хотите изменить размер массива, вы можете увеличить размер вместо того, чтобы изменять его до определенного значения:
int index = value.Length;
Array.Resize<product>(ref value, index + 1);
value[index] = ...
Массивы имеют нулевой индекс, поэтому к массиву, инициализированному до размера 4, можно получить доступ только до индекса 3 ...
Если вы хотите, чтобы массив увеличивался, вы должны необходимо либо инициализировать массив, по крайней мере, такого размера, до которого вы хотите иметь возможность расти, либо вам придется создать новый массив с новым большим размером и скопировать старый массив; не очень эффективно.
В этом случае лучше использовать коллекцию в виде списка, а не массива, чтобы размер мог динамически увеличиваться.
Вам, вероятно, также следует взглянуть на Массив по сравнению со списком: когда какой использовать?