Вчера я получил некоторую помощь о получении индекса коллекции. Вот код, который я использую.не может преобразовать строку в char
System.Text.StringBuilder sb = new System.Text.StringBuilder();
for (int i = 1; i < _prod.ActiveProductItemCollection.Count; i++)
{
sb.Append("<script type='text/javascript'>");
sb.Append("mboxCreate(\"product_productpage_rec{0}\")", i);
sb.Append("\"entity.id=" + _prodID + "\",");
sb.Append("\"entity.categoryId=" + _categoryID + "\",");
sb.Append("\"entity.name=" + _prod.ActiveProductItemCollection[i].Title + "\",");
sb.Append("\"entity.pageURL=" + Request.Url.ToString() + "\",");
//The following value has been taken from the productImageControl code behind.
//Might have to refactor in future as a property of the image control.
string filename = AppSettingsManager.Current.ProductImagePathLarge + _prod.ActiveProductItemCollection[i].Sku
+ AppSettingsManager.Current.ProductImageExtension;
sb.Append("\"entity.thumbnailURL=" + filename + "\",");
sb.Append("\"entity.inventory=" + _prod.ActiveProductItemCollection.Count + "\",");
sb.Append("\"entity.value=" + _prod.ActiveProductItemCollection[i].ActualPrice + "\",");
sb.Append("\"entity.ProductItemID=" + _prod.ActiveProductItemCollection[i].Sku + "\",");
sb.Append("\"entity.addToCartImg=~/Images/Buttons/btn_AddToCartFlat.gif\");<");
//The last line has to be /script. < inserted on prev line. do not change it or bad things will happen.
sb.Append("/script>");
}
this.LiteralMBoxScript.Text = sb.ToString();
Что я хочу сделать, это получить индекс элемента в коллекции после productpage_rec.
Так, например, первый продукт будет генерировать как
mboxCreate («product_productpage_rec1»
и так далее, и так далее для каждого продукта в коллекции. Когда я пытаюсь построить я получаю follwong ошибка:
"не может конвертировать из строки на символ"
Его подножки на product_productpage_rec {0}
Что мне не хватает?
Заранее спасибо.
Вы пытались использовать 'StringBuilder.Append (Char, Int32)' перегрузка http://bit.ly/cGh8ud, поэтому вы получаете эту ошибку. Компилятор считает, что лучше всего использовать перегрузку вместо 'Append (String, Int32)' –