Я создал настраиваемую цель для NLog , и она отлично работает, но когда я редактирую файл nlog.config, я получаю предупреждение, что This is an invalid xsi:type 'http://www.nlog-project.org/schemas/NLog.xsd:LogMillMessageBus'
This is an invalid xsi:type 'http://www.nlog-project.org/schemas/NLog.xsd:LogMillMessageBus'
Это мой nlog.config file:
<?xml version="1.0" ?> <nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <extensions> <add assembly="Core.v40.NLog.Extensions"/> </extensions> <targets async="true"> <target name="LogMillMessageBus" xsi:type="LogMillMessageBus"/> <target name="Console" xsi:type="ColoredConsole" layout="${date:format=HH\:mm\:ss.fff} ${message} ${exception:format=tostring}${event-context:item=Details}"/> </targets> <rules> <logger name="*" minlevel="Trace" writeTo="Console" /> <logger name="*" minlevel="Debug" writeTo="LogMillMessageBus" /> </rules> </nlog>
Могу ли я как-то создать свой собственный xsd, который добавляет http://nlog -project.org / schemas / NLog.xsd , чтобы я не получил предупреждение?
Простой способ установить этот пакет https://nuget.org/packages/NLog.Schema/2.0.1.2
Трудный путь (мой первый способ) - найти этот отсутствующий xsd и попросить Visual Studio использовать его.
Вы можете получить xsd с этой страницы. http://nlog.codeplex.com/releases/view/32639. Я скачал версию NLog2.netfx40.zip, распаковал ее и скопировал NLog.netfx40.xsd в корень моего проекта. Чтобы Vusual Studio использовал его, вы должны открыть меню «XML-> Схемы ...» (меню XML появляется между TEAM и TOOLS, если вы открываете файл XML для редактирования) и добавить файл xsd. Теперь в моем случае последней проблемой был неправильный xmlns. Поэтому я изменил его в моей конфигурации с http://www.nlog-project.org/schemas/NLog.xsd на http://www.nlog-project.org/schemas/NLog.netfx40.xsd.
http://www.nlog-project.org/schemas/NLog.xsd
http://www.nlog-project.org/schemas/NLog.netfx40.xsd