Как делает Excel VSTO Work?

Насколько я могу понять из реализации , метод to_representation не вызывается, если значение равно Нет . Поэтому, чтобы избежать этой проблемы, я думаю, что вы можете использовать SerializerMethodField . Вы можете использовать это так:

class BookSerializer(serializers.ModelSerializer):
  rating = serailizer.SerializerMethodField()

  class Meta:
    model = Book
    fields = ("title", "rating",)

  def get_rating(self, obj):
      if obj.rating == None:
         return "Something"
      return obj.rating

8
задан James Mertz 18 July 2012 в 06:20
поделиться

2 ответа

Согласно этому (благодарит PintSizedCat) для Excel 2003 происходит следующее:

Приложение Microsoft Office проверяет пользовательские свойства документа, чтобы видеть, существуют ли расширения управляемого кода, связанные с документом. Для получения дополнительной информации см. Пользовательский Обзор Свойств Документа.

Если существуют расширения управляемого кода, загрузки приложения AddinLoader.dll. Это - неуправляемый DLL, который является компонентом загрузчика для Visual Studio 2 005 Инструментов для Office Второе время выполнения Выпуска. Для получения дополнительной информации посмотрите Инструменты Visual Studio для Обзора Времени выполнения Office.

AddinLoader.dll загружает Платформу.NET и запускает управляемую часть Инструментов Visual Studio для времени выполнения Office.

Инструменты Visual Studio для времени выполнения Office создают домен приложения, устанавливают политику для домена приложения для не доверия Моей Компьютерной Зоне и проверяют хранилище политики безопасности доступа к коду для нахождения политики для узла настройки.

Платформа.NET проверяет доказательства, представленные блоком против политики. Если это перестало работать, ошибка повышена. Если это передает, процесс продолжается.

Если настройка использует декларацию развертывания, Инструменты Visual Studio для времени выполнения Office использует его для проверки на обновления блока. Если какие-либо обновления необходимы, они выполняются теперь.

Инструменты Visual Studio для времени выполнения Office загружают блок в домен приложения.

Инструменты Visual Studio для времени выполнения Office называют обработчик событий Запуска в Вашем узле настройки. Для получения дополнительной информации посмотрите Инструменты Visual Studio для Событий Проекта Office.

В рабочей книге Excel моего тестового проекта у меня есть два пользовательских свойства:

_AssemblyName, значение = * _AssemblyLocation, оценивают = {533b2c13-a125-418a-bfff-9546b0762807}

Я предполагаю, что это свойства, которые направляют время выполнения VSTO к моему блоку.

7
ответ дан 5 December 2019 в 13:02
поделиться

Это все сделано в Реестре, необходимо смочь найти ключ HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\Excel или Ваше equivelant приложение. У меня есть больше опыта с COM-надстройками, которые регистрируются где-то в другом месте в Реестре также. Этот ключ должен иметь объект LoadBehaviour под ним, который используется, чтобы определить, как приложение загружается (2, загрузка вручную, 3 нагрузка автоматически на запуск).

У Вас есть Проект Установки для Вашего VSTO? Внутри там Вы видите Ключ реестра, который установлен, но Программа установки/должна также Регистр VSTO в GAC (хотя не делают честное слово, поскольку я являюсь немного шатким с VSTO, как я сказал).

Надежда, которой это помогает, я попытаюсь найти еще некоторую информацию для Вас.

Редактирование необходимо попытаться читать следующий http://msdn.microsoft.com/en-us/library/bb386298.aspx, который даст Вам объяснение того, каково дополнение. Это - действительно просто обертка вокруг хоста COM, который загружается из Реестра, и VSTO говорит с этим с помощью некоторого кода Interoparability.

Также полезный http://msdn.microsoft.com/en-us/library/23cw517s.aspx (Начинающий с Инструментами Visual Studio для Office, не пробивайте его, потому что он говорит, что Начало работы в, существует много полезной информации там), и http://msdn.microsoft.com/en-us/library/hy7c6z9k.aspx (Который связан сначала и является обзором Дополнений VSTO).

6
ответ дан 5 December 2019 в 13:02
поделиться
Другие вопросы по тегам:

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