LazyLoading еще не поддерживается EF Core, но есть неофициальная библиотека, которая включает LazyLoading: https://github.com/darxis/EntityFramework.LazyLoading . Вы можете использовать его, пока он официально не поддерживается. Он поддерживает EF Core v1.1.1. Он доступен в виде пакета Nuget: https://www.nuget.org/packages/Microsoft.EntityFrameworkCore.LazyLoading/
Отказ от ответственности: Я владелец этого репо и приглашаю вас попробовать, сообщить о проблемах и / или внести свой вклад.
Как насчет использования переменных среды?
export LONGPATH=/usr/local/projects/include/foo/system/v1
gcc foo.c -o foo -I$LONGPATH
Для более сложных сценариев можно использовать оболочки для вызова компилятора, чтобы фактические команды и их параметры отображались только при ошибках или предупреждениях. Например, при использовании cmake большая часть стандартного вывода уже сильно урезана.
Точно так же есть возможность использовать файлы спецификаций с gcc .
Если это в основном извержение огромных строки во время make, вызывающие раздражение, вы также можете изменить свой Makefile так, чтобы он не отображал строку компилятора, а вместо этого использовал что-то вроде:
.cpp.o:
@echo $(CC) $<
@$(CC) $(FLAGS) -c -o $@ $<
'@' подавляет эхо командной строки
В scons я вставляю символы новой строки в свои генераторы команд, чтобы сделать длинные команды более удобочитаемыми:
например
tool \
-opt1 bar1 \
-opt2 bar2 \
-opt3 bar3 \
-opt4 bar4
, затем я создаю локальный метод при построении командной строки, чтобы уменьшить беспорядок.
cmds = []
def l(line,indent=1):
cmds.append(indent*' '+line)
l('tool',0)
l('-opt1 bar1')
l('-opt2 bar2')
l('-opt3 bar3')
l('-opt4 bar4')
return '\\\n'.join(cmds)
Вы можете не только сделать вывод компилятора короче, но и раскодировать его цветом и добавить подробный флаг. Результат будет выглядеть примерно так:
alt text http://img526.imageshack.us/img526/9572/sconsf.png
Вот как (цветовая тема украдена из SCons Wiki):
import os,sys
colors = {}
colors['cyan'] = '\033[96m'
colors['purple'] = '\033[95m'
colors['blue'] = '\033[94m'
colors['green'] = '\033[92m'
colors['yellow'] = '\033[93m'
colors['red'] = '\033[91m'
colors['end'] = '\033[0m'
#If the output is not a terminal, remove the colors
if not sys.stdout.isatty():
for key, value in colors.iteritems():
colors[key] = ''
compile_source_message = '%s\nCompiling %s==> %s$SOURCE%s' % \
(colors['blue'], colors['purple'], colors['yellow'], colors['end'])
compile_shared_source_message = '%s\nCompiling shared %s==> %s$SOURCE%s' % \
(colors['blue'], colors['purple'], colors['yellow'], colors['end'])
link_program_message = '%s\nLinking Program %s==> %s$TARGET%s' % \
(colors['red'], colors['purple'], colors['yellow'], colors['end'])
link_library_message = '%s\nLinking Static Library %s==> %s$TARGET%s' % \
(colors['red'], colors['purple'], colors['yellow'], colors['end'])
ranlib_library_message = '%s\nRanlib Library %s==> %s$TARGET%s' % \
(colors['red'], colors['purple'], colors['yellow'], colors['end'])
link_shared_library_message = '%s\nLinking Shared Library %s==> %s$TARGET%s' % \
(colors['red'], colors['purple'], colors['yellow'], colors['end'])
java_compile_source_message = '%s\nCompiling %s==> %s$SOURCE%s' % \
(colors['blue'], colors['purple'], colors['yellow'], colors['end'])
java_library_message = '%s\nCreating Java Archive %s==> %s$TARGET%s' % \
(colors['red'], colors['purple'], colors['yellow'], colors['end'])
env = Environment()
AddOption("--verbose",action="store_true", dest="verbose_flag",default=False,help="verbose output")
if not GetOption("verbose_flag"):
env["CXXCOMSTR"] = compile_source_message,
env["CCCOMSTR"] = compile_source_message,
env["SHCCCOMSTR"] = compile_shared_source_message,
env["SHCXXCOMSTR"] = compile_shared_source_message,
env["ARCOMSTR"] = link_library_message,
env["RANLIBCOMSTR"] = ranlib_library_message,
env["SHLINKCOMSTR"] = link_shared_library_message,
env["LINKCOMSTR"] = link_program_message,
env["JARCOMSTR"] = java_library_message,
env["JAVACCOMSTR"] = java_compile_source_message,
Скомпилировать с "scons --verbose", чтобы увидеть обычный объемный вывод gcc.