Я создал метод в C #, который расширяет строковый тип данных, создавая дополнительную перегрузку для функции Split, чтобы можно было определить спецификатор текста.
Пример
Строковые данные определяются как «поле 1», «поле 2», «поле 3»
string[] splitData = data.Split(',','"')
Расширение отлично работает. Я могу получить доступ к методу, как только я ссылаюсь и использую пространство имен. Однако есть проблема в методе, который я пытаюсь отладить, но отладчик не вступит в метод расширения.
Добавочный код
namespace Extensions
{
public static class StringExtension
{
public static string[] Split(this string s, char delimiter, char qualifier)
{
// Method does work
}
}
}
Код в тесте nUnit
string testString = "\"Field 1\",\"Field 2\",\"Field 3\"";
int expectedCount = 3;
// Do Test.
string[] result = testString.Split(',','"');
Assert.AreEqual(expectedCount, result.Length);
Я не могу войти в testString.Split (',', '"'). Он возвращает результат, а intellisense показывает метод расширения. Отладчик просто перешагивает через него, как это было бы для встроенного метода Split.
Есть идеи ??