?
Solved

vb to c#

Posted on 2009-05-12
3
Medium Priority
?
258 Views
Last Modified: 2013-12-26
I'm trying to create a grid view in c# ..
can someone help me to convert it to C# so I can add it my cs page
here is the code I have in vb

  Public Overrides Sub Retrieve(Optional ByVal dr As DataRow = Nothing)
        Try
            If dr Is Nothing Then
                With MyBase.DataSet.Tables(MyBase.TableName)
                    dr = .Rows(MyBase.RowNumber)
                End With
            End If

            Select Case _intSelectFilter
                Case SelectFilters.All
                    _intVisitID = FieldToString(dr("iVisitID"))
                    _strClientID = FieldToString(dr("sClientID"))
                    _strVisitDate = FieldToDate(dr("dtVisitDate"))
                    '_intVisitTypeID = FieldToString(dr("iVisitTypeID"))
                    _strVisitType = FieldToString(dr("sVisitType"))
                    _intScoreMMSE = FieldToNumber(dr("iMMSE"))
                    _intScoreCornell = FieldToNumber(dr("iCornell"))
                    _intScoreGDS = FieldToNumber(dr("iGDS"))
                    _intScorePHQ9 = FieldToNumber(dr("iPHQ9"))
                    _decScoreGait = FieldToDecimal(dr("dGait"))
                    _intWeight = FieldToNumber(dr("iWeight"))
                    _intTimesHospitalized = FieldToNumber(dr("iTimesHospitalized"))

            End Select

        Catch exp As Exception
            Throw exp

        End Try
    End Sub

#End Region

End Class
0
Comment
Question by:Romacali
3 Comments
 
LVL 75

Accepted Solution

by:
käµfm³d   👽 earned 1000 total points
ID: 24369933
I'm assuming FieldToXXXXX() are custom functions you wrote. Also, C# (as of current) does not have a concept of optional parameters. I overloaded the Retrieve function to simulate optional parameters.
public override void Retrieve(DataRow dr)
{
    try
    {
        if (dr == null)
        {
            dr = base.DataSet.Tables(base.TableName).Rows[base.RowNumber];
        }
 
        switch (_intSelectFilter)
        {
            case SelectFilters.All:
                _intVisitID = FieldToString(dr["iVisitID"]);
                _strClientID = FieldToString(dr["sClientID"]);
                _strVisitDate = FieldToDate(dr["dtVisitDate"]);
                //_intVisitTypeID = FieldToString(dr["iVisitTypeID"]);
                _strVisitType = FieldToString(dr["sVisitType"]);
                _intScoreMMSE = FieldToNumber(dr["iMMSE"]);
                _intScoreCornell = FieldToNumber(dr["iCornell"]);
                _intScoreGDS = FieldToNumber(dr["iGDS"]);
                _intScorePHQ9 = FieldToNumber(dr["iPHQ9"]);
                _decScoreGait = FieldToDecimal(dr["dGait"]);
                _intWeight = FieldToNumber(dr["iWeight"]);
                _intTimesHospitalized = FieldToNumber(dr["iTimesHospitalized"]);
                break;
        }
    }
    catch (Exception exp)
    {
        throw exp;
        //throw;   <<-- You may want to consider using "throw" by itself as it preserves the stack trace
    }
}
 
public override void Retrieve()  // Simulate optional parameter
{
    Retrieve(null);
}

Open in new window

0
 
LVL 8

Expert Comment

by:RyanAndres
ID: 24369947
0
 
LVL 32

Assisted Solution

by:Daniel Wilson
Daniel Wilson earned 1000 total points
ID: 24370002
try this:

It translates to 2 functions due to the optional parameter.

http://www.builderau.com.au/program/windows/soa/Handling-optional-parameters-in-C-/0,339024644,320268431,00.htm



        public void Retrieve(){
            return Retrieve(null);
        }
 
        public void Retrieve( DataRow dr){
            try{
                if(dr == null){
                    dr = <NameOfMyParentClass>.DataSet.Tables(<NameOfMyParentClass>.TableName).Rows(<NameOfMyParentClass>.RowNumber);
                }
                switch (_intSelectFilter){
                    case SelectFilters.All:
                        _intVisitID = FieldToString(dr["iVisitID"]);
                        //Other rows in here translater similarly
 
                }
            }catch(Exception Exp){
                throw Exp;
            }
        }

Open in new window

0

Featured Post

The new generation of project management tools

With monday.com’s project management tool, you can see what everyone on your team is working in a single glance. Its intuitive dashboards are customizable, so you can create systems that work for you.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

When designing a form there are several BorderStyles to choose from, all of which can be classified as either 'Fixed' or 'Sizable' and I'd guess that 'Fixed Single' or one of the other fixed types is the most popular choice. I assume it's the most p…
Entity Framework is a powerful tool to help you interact with the DataBase but still doesn't help much when we have a Stored Procedure that returns more than one resultset. The solution takes some of out-of-the-box thinking; read on!
Get people started with the process of using Access VBA to control Outlook using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Microsoft Outlook. Using automation, an Access applic…
Show developers how to use a criteria form to limit the data that appears on an Access report. It is a common requirement that users can specify the criteria for a report at runtime. The easiest way to accomplish this is using a criteria form that a…
Suggested Courses

601 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question