У меня есть несколько моделей, и я хочу использовать их в машинописных текстах, так что бриз может потреблять эти модели и строить metadataStore
, но не знаю, что делать, есть несколько способов добавить свойства вручную, но я хочу, чтобы построить metadataStore
от существующей моделиГенерировать метаданные из интерфейса breeze + Typcript
Это мои машинопись интерфейсы, которые были порождаемые T4TS
/** Generated from Twine.Infrastructure.Entity **/
export interface IEntity extends breeze.Entity {
_id: number;
_created_at?: string;
_updated_at?: string;
}
/** Generated from Twine.Infrastructure.Models.Ingredient **/
export interface IIngredient extends twine.Model.IEntity {
Price?: number;
Name: string;
Description: string;
}
Этот extends breeze.Entity
был добавлен мной на самом деле.
И это услуга, которая должна получить метаданные из T
и возвращать один результат по идентификатору
Get<T>(key:string, successCallback: Function, failCallback?: Function): void {
var type = new breeze.EntityType(); //what should be here???
var entityKey = new breeze.EntityKey(type, key);
this.manager.fetchEntityByKey(entityKey)
.then((data: breeze.EntityByKeyResult) => { successCallback(data) })
.catch((reason: any) => {
if (failCallback) {
failCallback(reason);
}
});
}
Так new breeze.EntityType();
этот конструктор принимает EntityTypeOptions
и это выглядит как
interface EntityTypeOptions {
shortName?: string;
namespace?: string;
autoGeneratedKeyType?: AutoGeneratedKeyType;
defaultResourceName?: string;
dataProperties?: DataProperty[];
navigationProperties?: NavigationProperty[];
}
Так где же я добавить мой существующие модели IEntity
? Чтобы мне не нужно было строить их с EntityTypeOptions
см. Здесь http://stackoverflow.com/questions/29058810/is-there-any-angularjs-asp-net-webapi-odata-breeze-js-typescript-example/29066931#29066931 –
Да, я используйте entityframework, но угадайте, что бриз неправильно сконфигурирован –