Asp.net Mvc - Appending Variable To Viewbag Name In For Each Loop?
Nov 1, 2011
I have a mvc 3 vb.net app that I need to generate several viewbags for... I tried the following code to just drop a variable at the end of the viewbag name after each loop but it wont take it.. It says "Object variable or With block variable not set." when it his the viewbag.status(p) line on the second pass it makes through the loop...
Dim p As Integer = 0
For Each registrant In b
Dim _regi As attendance = registrant
I'm trying out MVC Scaffolding in a VB.NET MVC3 project and running into an issue with late binding with Option Strict set on (and I want it on).
This works in C#:
public ActionResult Create() { ViewBag.PossibleTeams = context.Teams;
[code].....
causes the compiler error Option Strict On disallows late binding. I took a look at the documentation here: [URL] but it wasn't very helpful.
I notice that a new empty application in C# uses the ViewBag in the HomeController but the VB.NET version uses ViewData, so maybe this is a VB.NET limitation.
In this partial view I create new ViewDataDictionary to pass additional data to my editor. In the editor I access ViewBag.Classes and its value is null. However, when I debug I can see that the ViewBag contains "Classes" key. Here a screen dump:
Why is this happening to me and what can I do to pass this value from a partial to editor template?
Im looking for help with trying to vary a variable-name in a for loop:
For b = 1 To Count
' the below image_var(b) varible needs to vary on each iteration' Dim image_var(b) As New LinkedResource(Server.MapPath(myArray(b-1))) ' need also to have the b in myArray(b-1) bit work through the loop too' ' that is I''m after the array index b minus 1' image_var(b).ContentId = "imageContentId_" + b.ToString
What type can i assign a for loop control variable? I want the for loop to be the output file of a calculation, but i can not define it as anything, and i do not know how to write it so that the output is actually what the code spits out once the code has finished running.
i have a program that is going to be disabling services depending on what is selected by the user via check boxes, and it would also add to the log if it failed or succeed ( the dim xfailed as integer ). There are a total of 73 options for services and i didn't feel like copy and pasting IF THEN statements for all 73. I was wondering if i could make a loop out of this?
The x would be the service name - ex. "Themes"
Dim x as serviceprocess.servicecontroller = new serviceprocess.servicecontroller(x) dim xFailed as integer Try
The subject almost sums this up. I have dimensioned a variable 'y' inside a for loop. If i then try and access this outside of the for loop I cannot. What is the reason for this and how can I correct it? Unfortunately I am not able to Dim the variable 'y' outside of the for loop.
Using VB.NET .NetFramwork 3.5. This fails and strikes me as odd. Is this correct behavior: Public Sub TestForEach() For index As Integer = 1 To 10 Dim z As Integer Assert.AreEqual(0, z) z = index Next End Sub I would expect z to always equal 0 as I thought the dim-ing of an integer would set the value to 0. If you run this. It fails at the second loop. For some reason z retains it's value of 1. I know I can manually initialize z to = 0, but I wanted to know if this is a bug or expected behavior.
I have a button that searches through a binary file to bring up customer information with the following code:
[Code]...
My problem is, I need to create a variable which holds the record number, so that the record can be edited, and put back into the file at its previous location, how would I implement this? Not sure about the code.
I'm multiplying X*Y*Z in a loop of 200 interations Y is declared as a constant. A timer can cause the loop to pause for 10 seconds.
During this 10 sexond pause I would like to change the value of Y. It needs to be changed only for this run, not a permanent change which can be done in the declaration.
wondering about the relatively efficiency of declaring oop variables in the loops, emselves, or declaring them before first use. Here are some examples:Declare early:
Dim ix As Integer Dim currentNode As System.Xml.XmlNode For ix = 1 To 100
OK, after trying to get this working for a couple of days now I decided that I would turn to the experts here. I am trying to create a nested loop with a variable amount of nests. Let me elaborate. I have a program that first asks for the minimum and maximum amount of loops, I currently have a SELECT CASE statement that addresses each level of nesting individually.
Dim cMin As Integer = InputBox("Min") Dim cMax As Integer = InputBox("Max") Dim c1, c2, c3 As Integer
I'm trying to use the timer (not a Timer object) in a Do... Until loop. I want the loop to put a single variable into a label. When I do this it works and puts the value into the label (lblOxygenReading):
If btnGetOxygen.Text = "Get Oxygen Reading" Then Select Case True Case rdoColorWhite.Checked strCurrentColor = "White" Case rdoColorRed.Checked [Code] .....
It goes through the Do loop and the For.. next loop but doesn't change the label. Visual Studio doesn't show any errors when I'm writing the code, but when I run it, it hangs somewhere.
Today I investigated a logical bug in our software and figured out that this is related to the way VB.NET thread variables inside a loop.Let's say I have the following code:
Dim numbers As New List(Of Integer) From {1, 2, 3, 4, 5} For Each number As Integer In numbers Dim isEven As Boolean
[code]....
The problem is that isEven is declared but not assigned.In this specific case, it would be correct to write dim isEven as Boolean = false but I haven't done this.In VB.NET, a variable that is declared inside a for loop keeps its value for the next itaration. This is by design: [URL]but this is also dangerous pitfall for programmers.
However, until now, I haven't been aware of this problem/behaviour. Until now.Most of our code base is C# anyway, which doesn't allow the use of an uninitialized variable, so there is no problem. But we have some legacy code that is written in VB.NET that we have to support. So the best thing would be to generate a warning or even an error in this specific case.But even with Option Explicit / Option Strict this does not generate a warning / an error.Is there a way make this a compile time error or maybe a way to check this with FxCop?
Makes the following statement about the code below:
**"The computer evaluates the loop condition in the Do...Loop statment to determine whether the loop instructions should be processed. In this case, the inputsales <> String.Empty condition compares the contenst of the input sales variable to the String.Empty value. As you know the String.Empty value represents a zero length, or empty, string if the inputsales variable is empty, the loop condition evaluates to True and the computer process the loop instructions. *If on the other hand the inputsales variable is not empty, the loop condition evaluates to false and the computer skips over the loop instructions.
Based on the code I think it is the opposite: ...that while the inputsales value is not empty it should evaluate to true and process the loop and if it is empty it should evaluate to false and skip the loop?
i have the following code which appends a text base file knowen as a .pgp file; all works fine except that everytime i launch this app i append the text in one continual line i need the text to appned to a new line eveytime it is used.Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click