Вы можете использовать пакет requireg
для решения этой проблемы:
var forever = require('requireg')('forever')
выполнит трюк.
Кроме того, есть еще один модуль , global-npm
, хотя и для использования только глобального npm
, вы можете посмотреть короткий код и посмотреть, как работает эта техника.
Ни одного?
from prop in TypeDescriptor.GetProperties(instance).Cast<PropertyDescriptor>()
where !prop.Attributes.OfType<IgnoreAttribute>().Any()
from attribute in prop.Attributes.OfType<ValidationAttribute>().
where attribute.IsValid(prop.GetValue(instance)) == false
select new ...etc
Вам нужна гибкая модель PropertyDescriptor
? С рефлексией довольно просто:
var filtered = instance.GetType().GetProperties()
.Where(prop => !Attribute.IsDefined(prop, typeof(IgnoreAttribute)));
Или сделать все целиком:
var invalid = from prop in instance.GetType().GetProperties()
where !Attribute.IsDefined(prop, typeof(IgnoreAttribute))
let valAttribs = Attribute.GetCustomAttributes(
prop, typeof(ValidationAttribute))
where valAttribs != null && valAttribs.Length > 0
let value = prop.GetValue(instance, null)
from ValidationAttribute valAttrib in valAttribs
where !valAttrib.IsValid(value)
select new {};