>>You code doesn't make sense unless 'value' is a private field - and since you have no setter I assume it is not.
>
>Hi Viv,
>
>I want to verify my code with you:
>
>
> private byte[] _webGrpImg = new byte[0];
> public byte[] Webgrpimg { get { return _webGrpImg; }
> set { value = _webGrpImg;
> if (value.Length>0)
> {
> Webgrpimgd = DateTime.Now;
> }
> }
> }// webgrpimg. Group logo
>
> public DateTime? Webgrpimgd { get; set; } // webgrpimgd. Datetime stamp the group logo image was last updated
>
>will it only set date when I actually changed the image or it will always set the date? E.g. is this code OK or it's better to add some other means of checking if the image was added / changed?
>
>Thanks.
You have your set backwards. You want to set the value of _webGrpImg to value, not the other way around, Also you will be setting the date any time that the value is set to a non empty array, potentially including when the value is loaded from the database. You can use SequenceEqual (
http://msdn.microsoft.com/en-us/library/vstudio/bb348567%28v=vs.100%29.aspx) before updating the field to determine if the value actually changed. Finally, you should be checking if value is null prior to checking its length.