Функция PV и портирующий VB6 на C#

Построение на ответе Javier; при необходимости в одной маркировке в формах (на фронтенде), и другая маркировка на администраторе лучше устанавливать внутренний (администратор) один в модели и перезаписывать ее на формах. Администратор будет, конечно, использовать маркировку в образцовом поле автоматически.

6
задан Christopher Bottoms 1 May 2012 в 18:02
поделиться

3 ответа

Использование Microsoft.VisualBasic из C # и VB.NET подробно обсуждалось в этом вопросе . Пространство имен Microsoft.VisualBasic полностью поддерживается и будет существовать, пока существует .Net. Нет причин избегать этого.

РЕДАКТИРОВАТЬ: Это говорит о том, что во время набора текста другими ответами на этот вопрос являются неправильная повторная реализация функции и неподдерживаемая библиотека для одного человека из Code Galleries. Да ладно, ребята, чтобы Microsoft отказалась от финансовых функций из VB, потребовалось бы настоящее важное событие .

Другое дело Microsoft.VisualBasic.Compatibility , который предназначен исключительно для использования мастером обновления VB6, EDIT теперь помечен как устаревший в .Net 4 (мое предсказание сбылось) и не должно использоваться для новых разработок. Удаление ссылок на это дало бы некоторые преимущества, но лично я, вероятно, попытался бы достичь полностью рабочего порта, сначала ссылаясь на .NET 3.5.

11
ответ дан 8 December 2019 в 16:06
поделиться

Pretty straight forward to replicate in C#

    public static double PV(double Rate, int nPer, double Pmt, double FV, bool Type)
    {
        double ann = Math.Pow(1 + Rate, nPer);
        return -(FV + Pmt * (1 + (Type ? Rate : 0)) * ((ann - 1) / Rate)) / ann;
    }

Just a re-arrangement of the formula Microsoft provides.

3
ответ дан 8 December 2019 в 16:06
поделиться

Вы можете использовать эту библиотеку, которая дублирует функции Excel в f #

Библиотека

Она имеет PV, который является текущим значением. Я использовал его один или два раза. Просто вставьте его и добавьте ссылку.

1
ответ дан 8 December 2019 в 16:06
поделиться
Другие вопросы по тегам:

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