Как в макросе определить путь к компилируемому файлу или про
От: Ziaw Россия  
Дата: 12.04.10 14:25
Оценка:
сабж, мне нужно добраться до конфига в папке проекта для чтения коннекшн стринга.
... << RSDN@Home 1.2.0 alpha 4 rev. 1468>>
Re: Как в макросе определить путь к компилируемому файлу или
От: hardcase Пират http://nemerle.org
Дата: 12.04.10 14:59
Оценка:
Здравствуйте, Ziaw, Вы писали:

Z>сабж, мне нужно добраться до конфига в папке проекта для чтения коннекшн стринга.


Текущий обрабатываемый файл:
[code]
def current_file_name : string = LocationStack.Top().File;
[code]
/* иЗвиНите зА неРовнЫй поЧерК */
Re: Как в макросе определить путь к компилируемому файлу или
От: hardcase Пират http://nemerle.org
Дата: 12.04.10 15:05
Оценка:
Здравствуйте, Ziaw, Вы писали:

Z>сабж, мне нужно добраться до конфига в папке проекта для чтения коннекшн стринга.



Возможно стоит сделать отдельный макрос уровня сборки для указания файла конфига (относительно текущего файла).
Проблема в том, что сейчас компилятор не знает (по крайней мере я не в курсе) корневого каталога проекта и единообразно указывать внешние файлы несколько проблематично.
/* иЗвиНите зА неРовнЫй поЧерК */
Re: Как в макросе определить путь к компилируемому файлу или
От: VladD2 Российская Империя www.nemerle.org
Дата: 12.04.10 18:46
Оценка: 15 (2)
Здравствуйте, Ziaw, Вы писали:

Z>сабж, мне нужно добраться до конфига в папке проекта для чтения коннекшн стринга.


Лучше всего описать конекшен-стринг в мета-атрибуте уровня сборки. Например:
[assembly: CompileTimeConnectionStrong("относительный (от файла проекта) путь")]


Путь к проекту можно получить так:
typer.Manager.Options.ProjectPath


Пример подобного решения можно наблюдать в стандартной библиотеке — макросе Resource (Resource.n#44).

Собственно, изучи весь макрос. Это будет полезно.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[2]: Как в макросе определить путь к компилируемому файлу
От: hardcase Пират http://nemerle.org
Дата: 12.04.10 19:05
Оценка:
Здравствуйте, VladD2, Вы писали:


VD>Путь к проекту можно получить так:

VD>
VD>typer.Manager.Options.ProjectPath
VD>


Таки оно возможно. Возьму на заметку!
/* иЗвиНите зА неРовнЫй поЧерК */
Re[3]: Как в макросе определить путь к компилируемому файлу
От: VladD2 Российская Империя www.nemerle.org
Дата: 12.04.10 19:10
Оценка:
Здравствуйте, hardcase, Вы писали:

H>Таки оно возможно. Возьму на заметку!


Ну, если что-то невозможно, но очень хочется, то всегда можно сделать невозможное возможным .
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.