سؤال

لقد كنت أبحث عن الإنترنت باستخدام 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

شكرا لمساعدتي. تمكنت من معرفة طريقة القيام بذلك. شكرا على كل الرسائل.

alt text

نصائح أخرى

ربما جرب ما يلي؟

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("&lt;a href=\"'{0}'+ImageFilename\"&gt;View Image&lt;/a&gt;", ImageDownloadPath); 

أنا متأكد من أن <و> يحاولون تفسيرها كجزء من التعبير.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top