Как вы ссылаетесь на библиотеку классов C# из приложения Metro Win8 Javascript?

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


person Tarks    schedule 10.03.2012    source источник
comment
Что это за библиотека классов С#? Он нацелен на .NETCore? Создает ли он .winmd?   -  person James McNellis    schedule 11.03.2012
comment
Чтобы быть более конкретным, при создании проекта библиотеки классов убедитесь, что вы используете шаблон в стиле Windows Metro, а не только в Windows — таким образом вы получите .winmd и все остальное, что необходимо для работы. Вы не можете ссылаться на проект библиотеки ванильных классов таким образом.   -  person Pavel Minaev    schedule 11.03.2012
comment
В дополнение к специфическому типу библиотеки классов Metro вы также можете создать проект переносимой библиотеки, который можно использовать в Metro и стандартной .NET (также поддерживает Silverlight и WP7), но допускает только подмножество функций, общих для выбранных вами платформ.   -  person John Bowen    schedule 11.03.2012


Ответы (1)


Вам необходимо создать компонент среды выполнения Windows, создав библиотеку классов из шаблона «Visual C#» -> «Windows Metro Style» -> «Библиотека классов». Затем в свойствах этого проекта библиотеки классов вам нужно отметить тип вывода как «Файл WinMD».

Более подробные инструкции можно найти здесь:

http://msdn.microsoft.com/en-us/library/windows/apps/hh779077(v=vs.110).aspx

Это не указано в документации и, вероятно, является просто ошибкой в ​​Windows 8 Consumer Preview и Visual Studio 11 Beta, но обязательно не включайте точку в имя проекта, на который вы ссылаетесь. Например, я работал над приложением Car, поэтому сделал сборку под названием Car.Business. Приложение всегда вылетало с пустым экраном запуска всякий раз, когда я пытался сослаться на это. С другой стороны, если бы я просто использовал «Бизнес» в качестве имени сборки, тогда приложение работало бы нормально.

person Paul Mendoza    schedule 12.03.2012