У меня есть XSL-преобразование, использующее msxsl для добавления методов расширения в C #.У меня есть следующие настройки для msxsl:
<msxsl:script language="C#" implements-prefix="cs">
<msxsl:assembly name="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
<msxsl:assembly name="System.Xml.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
<msxsl:using namespace="System.Collections.Generic" />
<msxsl:using namespace="System.Linq" />
<msxsl:using namespace="System.Xml.Linq" />
Затем у меня есть функция ac # в качестве метода расширения:
public int returnUniqueCount(string theCodeCollection) {
// calculate and return the total number of distinct codes
if (theCodeCollection.Length > 0) {
string[] myObject = theCodeCollection.Split('|');
string[] uniqueCollection = myObject.Distinct().ToArray();
return uniqueCollection.Length;
} else {
return 0;
}
}
По сути, это просто берет токенизированную строку, разбивает ее и считаетнабор результатов, исключая дубликаты.
Преобразование отлично работает на сервере, но когда я пытаюсь профилировать его, я получаю следующую ошибку:
'System.Array' does not contain a definition for 'Distinct'
Я бьюсь головойпротив этого все утро, и я просто не вижу этого.Есть идеи?
Спасибо всем.