2016-08-16 2 views
0

Работа над проектом, где мне просто нужно создать случайное число, используя NVelocity на странице без редактирования кода за C#. Я новичок в NVelocity, и я просмотрел все сети, но не могу найти ответ.Nvelocity - Создайте случайное число

Любая помощь приветствуется.

ПРИМЕЧАНИЕ. Пользователь, который отметил это как возможный дублирующий вопрос. Я попытался адаптировать решение Velcocity/Java, указанное в этом ответе, чтобы соответствовать NVelocity/C# без везения. Я был в предположении, что ответ будет другим.

+1

Возможный дубликат [Velocity - генерации случайных чисел в шаблоне] (http://stackoverflow.com/questions/24758937/velocity-random-number-generation-in-a-template) –

ответ

0

NVelocity не имеет встроенной поддержки для генерации псевдослучайных чисел, однако, если вы создаете новый System.Random и добавьте его в VelocityContext, вы сможете получить к нему доступ из шаблона.

VelocityEngine velocityEngine = new VelocityEngine(); 
velocityEngine.Init(); 

VelocityContext context = new VelocityContext(); 
context.Put("random", new Random()); 

using (StringWriter sw = new StringWriter()) 
{ 
    for (int i = 0; i < 5; i++) 
    { 
     velocityEngine.Evaluate(context, sw, "", "$random.Next(1, 100)\n"); 
    } 

    Console.WriteLine(sw.ToString()); 
} 
+0

большое спасибо! !!! – GeekInTheBox