284 {
285 parsedValue = null;
287 if (fromLength > 0 && !HeaderUtilities.TryParseInt64(
input, fromStartIndex, fromLength, out result))
288 {
289 return false;
290 }
292 if (toLength > 0 && !HeaderUtilities.TryParseInt64(
input, toStartIndex, toLength, out result2))
293 {
294 return false;
295 }
296 if (fromLength > 0 && toLength > 0 && result > result2)
297 {
298 return false;
299 }
301 if (lengthLength > 0 && !HeaderUtilities.TryParseInt64(
input, lengthStartIndex, lengthLength, out result3))
302 {
303 return false;
304 }
305 if (toLength > 0 && lengthLength > 0 && result2 >= result3)
306 {
307 return false;
308 }
310 contentRangeHeaderValue._unit = unit;
311 if (fromLength > 0)
312 {
313 contentRangeHeaderValue._from = result;
314 contentRangeHeaderValue._to = result2;
315 }
316 if (lengthLength > 0)
317 {
318 contentRangeHeaderValue._length = result3;
319 }
320 parsedValue = contentRangeHeaderValue;
321 return true;
322 }