Date.Now is actually a property, not a function. Also, where exactly is this data coming from in the first place? Most likely, there's a better way to get it such that it won't be in String form to begin with.
Anyway:
vb.net Code:
Private Function GetNextDayOfWeekDate(dayOfWeek As String) As Date
Return GetNextDayOfWeekDate(DirectCast([Enum].Parse(GetType(DayOfWeek),
dayOfWeek),
DayOfWeek))
End Function
Private Function GetNextDayOfWeekDate(dayOfWeek As DayOfWeek) As Date
Dim d = Date.Today
Do While d.DayOfWeek <> dayOfWeek
d = d.AddDays(1)
Loop
Return d
End Function
You can use the Parse, TryParse, ParseExact or TryParseExact method of the TimeSpan structure to convert your time string to a TimeSpan, which you can then add to your Date.