Добавлен Sitecore.Logging dll (из nuget) в проект, но я все еще получаю ошибку.

Он работал нормально, пока я не добавил log4net dll (как часть какой-то другой зависимости от nuget). После этого произошла неоднозначная ошибка ссылки. Затем, когда я попытался указать Sitecore.Logging.LogManager / Sitecore.Logging.ILog, я получаю сообщение об ошибке.

Тип пространства имен 'Logging' не существует в пространстве имен 'Sitecore'

1
Blue Clouds 28 Май 2017 в 11:07

2 ответа

Лучший ответ

Щелкните правой кнопкой мыши вновь добавленную log4net dll -> properties -> Aliases-> и дайте другое имя, например «log». Это разрешит неоднозначность в коде.

0
Blue Clouds 30 Май 2017 в 06:27

Sitecore.Logging.dll не содержит классов в пространстве имен Sitecore.Logging, хотя вы можете быть прощены за то, что ожидаете, что это так - это, безусловно, соглашение.

Открытие его с помощью декомпилятора обнаруживает разветвленную версию log4net, скрывающуюся там.

Sitecore.Logging.dll contents

Вы, вероятно, ищете фабрику журналов в Sitecore.Diagnostics.Log в Sitecore.Kernel.dll

2
Richard Hauer 28 Май 2017 в 09:44