Sto ancora imparando .net e OOP e ho una domanda fondamentale che spero. Questa è un'app mvc asp.net.
Guardando il codice qui sotto, sono più interessato alla riga in CheckShippingVendor che dice ValidateDelivery (shipmentItem). Va bene passare un oggetto come parametro e fare in modo che il metodo statico privato aggiorni quell'elemento.
Quando ho eseguito un refactoring del metodo di estrazione del resharper, questo è ciò che ha fatto per me.
La classe viene istanziata e chiama il metodo CheckShippingVendor:
var packageStatus = _inventoryService.CheckShippingVendor(shipmentId, shipmentFile);
Ecco il resto del codice:
public PackageStatus CheckShippingVendor(string shipmentId, mvFile shipmentFile)
{
var packageStatus = new PackageStatus();
using (var shipmentItem = shipmentFile.Read(shipmentId))
{
ValidateDelivery(shipmentItem);
shipmentFile.Write(shipmentId, shipmentItem);
}
return packageStatus;
}
private static void ValidateDelivery(mvItem shipmentItem)
{
int shipped;
var shippedResult = Int32.TryParse(shipmentItem[1].ToString(), out shipped);
if (!shippedResult)
return;
int delivered;
var deliveredResult = Int32.TryParse(shipmentItem[57].ToString(), out delivered);
if (!deliveredResult)
return;
shipmentItem.Message = "NO INFORMATION AT THIS TIME";
}