Я бы использовал обходной путь.
соответствуют всем <% & %>
и заменяют его специальным символом (в моем случае _
подчеркивание), так что результат будет <% _ %>
&
char
и, наконец, заменяем специальный символ _
на &
[117 ]
const mySplit = (mystr) => {
const regex = /<%(?!%>).*%>/gm;
const matches = mystr.match(regex);
const tmpreplace = matches.map(e => e.replace(/&/g,'_'));
matches.forEach(e => mystr = mystr.replace(e,tmpreplace));
return mystr.split('&').map(e => e.replace(/_/g,'&'));
}
console.log(mySplit('my&string=21<%253&124%> <&> &&'));
console.log(mySplit('new<%<&%235<%test&gg%>&test&f'));
console.log(mySplit('a&<%&qwer&>ty%>&af'));
Можно сделать это путем добавления свойств навигации перекрестных модели. Это требует вручную редактирования EDMX. Существует пример, включая LINQ к Объектам, здесь.
Вы можете сделать это, используя представления для представления данных в другой базе данных. Читайте о cross database joins in EF