سؤال
لقد كنت أبحث عن الإنترنت باستخدام string.format للحصول على الكود الخاص بي ويبدو أنه لا يمكنني العثور على الكلية الصحيح التي تبدو على الكود الخاص بي.
DataColumn dtCol;
dtCol = new DataColumn("ImagePath", System.Type.GetType("System.String"));
dtImages.Columns.Add(dtCol);
dtImages.Columns["ImagePath"].Expression = string.Format("<a href=\"'{0}'+ImageFilename\">View Image</a>", ImageDownloadPath);
(imagefilename هو عمود على جدول قاعدة البيانات الخاص بي) يرمي الرمز أعلاه دائمًا خطأً في "خطأ بناء الجملة: مفقود المعامل قبل" <'عامل "
كيف أفعل هذا بشكل صحيح؟
المحلول 4
شكرا لمساعدتي. تمكنت من معرفة طريقة القيام بذلك. شكرا على كل الرسائل.
نصائح أخرى
ربما جرب ما يلي؟
string.Format("<a href=\"{0}\\{1}\">View Image</a>", ImageDownloadPath, ImageFilename);
في الكود الخاص بك الذي تستخدمه '
حول معرف تنسيق السلسلة ، والذي كان من شأنه أن يظهر بعد ذلك في السلسلة المنسقة ، و ImageFilename
لم يتم استخدام الخاصية بشكل صحيح. كان قد تمت إضافته ببساطة كنص عادي.
ستكون نتيجة سلسلةك بالقيم التالية على هذا النحو:
ImageFilename = "1.jpg";
ImageDownloadPath = "http://www.downloadme.com/images";
Yours: <a href="'http://www.downloadme.com/images'+ImageFilename">View Image</a>
Mine: <a href="http://www.downloadme.com/images/1.jpg">View Image</a>
ليس من الواضح على الإطلاق من السؤال ، لكنني أعتقد أن المشكلة ليست أ وقت الترجمة واحد على الإطلاق ... ليس بالفعل مع string.Format
. إنها مشكلة مع DataColumn.Expression
. أنت تعطي تعبيرًا يتضمن أقواس الزاوية ، لذلك تعتقد أنك تحاول إجراء مقارنات.
لا أستطيع أن أقول إنني أعرف الكثير عن DataColumn.Expression
, ، ولكن يجب أن تنظر في كيفية اقتباس الأوتار ... وكيف يقتبس يقتبس داخل الأوتار! على سبيل المثال ، هذا قد الشغل:
dtCol.Expression = string.Format
("'<a href=\"{0}'+ImageFilename+'\">View Image</a>'",
ImageDownloadPath);
ومع ذلك ، أعتقد أنه من المحتمل أن تجعل حياتك أ كثير أبسط إذا لم تحاول حساب HTML في التعبير لتبدأ. هل يمكنك حقًا عدم تطبيق المعالجة في وقت لاحق؟
جرب هذا:
dtImages.Columns["ImagePath"].Expression =
string.Format("<a href=\"'{0}'+ImageFilename\">View Image</a>", ImageDownloadPath);
أنا متأكد من أن <و> يحاولون تفسيرها كجزء من التعبير.