I don't have the necessary reputation to be able to comment on your original question hence this "answer" - so I apologise in advance.
There's nothing in your code example that would throw StackOverflowException
around the lines you've indicated, so you need to look deeper. You might possibly get a NullReferenceException on the GetCropUrl() extension method though as you haven't tested to make sure the meda item returns a valid object.
So everyone else doesn't have to download it - here's your code snippet (minus the usings/namespace):
public class Case
{
public Case(IPublishedContent content)
{
Id = content.Id;
Description = content.GetPropertyValue<string>("description");
Title = content.GetPropertyValue<string>("title");
//image
string image = content.GetPropertyValue<string>("image");
int imageId = 0;
int.TryParse(image, out imageId);
if (imageId != 0)
{
var umbracoHelper = new Umbraco.Web.UmbracoHelper(Umbraco.Web.UmbracoContext.Current);
Image = umbracoHelper.Media(imageId).GetCropUrl("umbracoFile", "image");
}
//Team
string teamID = content.GetPropertyValue<string>("teamMember");
Team = DAL.GetTeamProperties(teamID);
}
public Case() { }
public int Id { get; set; }
public string Title { get; set; }
public string Description { get; set; }
public string Image { get; set; }
public List<Team> Team { get; set; }
}
It's more likely that your problem lies here rather than the code extracting the Image Url:
Team = DAL.GetTeamProperties(teamID);
However more information is needed - can you post the actual stack trace of the exception?