Использование сборки R.NET в IronPython - PullRequest
5 голосов
/ 12 июля 2011

Я хотел бы использовать статистический пакет R для обработки некоторых данных в приложении IronPython 2.7 .Я нашел сборку R.NET , которая должна сделать это возможным.Проблема в том, что IronPython отказывается загружать сборку R.NET.

Код:

import clr  
clr.AddReference("R.NET")

Производит:

System.IO.IOException: could not add reference to assembly R.NET

Сборка находится в файленазывается R.NET.dll, который хранится в той же папке, из которой я вызываю ipy.exe.Я проверил, что папка на sys.path.Я пробовал варианты как clr.AddReference("R.NET.dll") и clr.AddReferenceToFile("R.NET.dll").Ни один из них не был успешным.

Может быть проблема в том, что в имени сборки есть точка (.)?Как мне обойти это?

FWIW Я использую Windows 7, R 2.13.0 , IronPython 2.7, v4.0 .NET Framework и R.NET 1.4.Я могу успешно добавить ссылку на R.NET из Visual C # Express IDE (под .NET 4.0) и воспроизвести примеры с домашней страницы R.NET.

Заранее спасибо!

1 Ответ

6 голосов
/ 12 июля 2011

Я собираюсь догадаться, что вы используете либо Internet Explorer, либо Chrome, оба из которых отмечают загруженные файлы ( Zone.Identifier )..NET откажется загружать сборки, испорченные указанной отметкой.

Чтобы удалить ее, просто разблокируйте файл R.NET.dll .Теперь тебе должно быть хорошо идти.Я посмотрю, смогу ли я добавить лучшее сообщение об ошибке при попытке загрузить такую ​​сборку.

...