Интеграция настройки Wix с папкой отладки приложения

Я думаю, что у вас такая же проблема, с которой я просто боролся. Эта проблема в вашем звонке. В нескольких учебниках вы вызываете метод .comparePassword() из такой модели.

User.comparePassword(candidate, cb...)

Это не работает, потому что метод находится на schema, а не на model. Единственный способ, которым я смог вызвать метод, - найти этот экземпляр модели, используя стандартные методы запросов mongoose / mongo.

Вот важная часть моего промежуточного программного обеспечения паспорта:

passport.use(
  new LocalStrategy({
    usernameField: 'email'
  },
    function (email: string, password: string, done: any) {
      User.findOne({ email: email }, function (err: Error, user: IUserModel) {
        if (err) throw err;
        if (!user) return done(null, false, { msg: 'unknown User' });
        user.schema.methods.comparePassword(password, user.password, function (error: Error, isMatch: boolean) {
          if (error) throw error;
          if (!isMatch) return done(null, false, { msg: 'Invalid password' });
          else {
            console.log('it was a match'); // lost my $HÏT when I saw it
            return done(null, user);
          }
        })
      })
    })
);

Итак, я использовал findOne({}), чтобы получить экземпляр документа, а затем должен был получить доступ к методам схемы, вставив в свойства схемы документ user.schema.methods.comparePassword

. Несколько различий, которые я заметил:

  1. Mine - это метод instance, а ваш метод static. Я уверен, что существует аналогичная стратегия доступа к методу.
  2. Я обнаружил, что мне пришлось передать хэш функции comparePassword(). возможно, это не обязательно для статики, но мне не удалось получить доступ к this.password
1
задан AP7 26 March 2019 в 12:44
поделиться

1 ответ

Перераспределение отладочных версий : отладочные версии приложений распространять не следует. Для работы им требуются отладочные версии DLL-библиотек времени выполнения (не представленные на обычных компьютерах, не принадлежащих разработчикам), а также они содержат много символов отладки, а в сборках .NET много метаинформации, которую, как правило, не следует отправлять другим , Отладочные библиотеки часто имеют дополнительные "d" в своем имени файла: mfcm140d.dll против mfcm140.dll , например.

Hello WiX : С учетом вышеизложенного добавление отладочных dll в настройку ничем не отличается от добавления файлов релизов. Здесь приведен пример Hello World для WiX Visual Studio . Он должен показать вам основы компиляции рабочей установки с WiX и Visual Studio. Здесь также есть несколько советов по быстрому старту для WiX (много ссылок на примеры).


Некоторые ссылки :

0
ответ дан Stein Åsmul 26 March 2019 в 12:44
поделиться
Другие вопросы по тегам:

Похожие вопросы: