Sólo las dos primeras respuestas son correcto en el alcance de la pregunta original. Y el segundo ciertamente no es demasiado complicado. Envolver el método de ayuda con una clase para cada atributo posible es un buen desarrollo orientado a objetos y exactamente lo que Microsoft hace en todo el marco, p. configuración de los archivos de diseño generados por Visual Studio.
Recomiendo usar la primera si solo quieres una propiedad específica, la segunda si quieres más. Debería ser parte del SDK realmente. Estamos intentando leer el WMAppManifest.xml aquí, no el AssemblyInfo, por lo que los metadatos de reflexión de ensamblaje estándar no son buenos.
Por cierto, si realmente desea obtener el nombre del producto a partir de los atributos de ensamblaje (no WPAppManifest.xml), entonces la última muestra fue leer el atributo equivocado! Use AssemblyProductAttribute, no AssemblyTitleAttribute. El título del ensamblado es realmente el título del archivo, por defecto es el mismo que el nombre del archivo de ensamblaje (p. Ej. MyCompany.MyProduct.WinPhone7App) mientras que el producto será algo así como el "título" de su aplicación en la tienda (por ejemplo, "Mi Producto"). Puede que ni siquiera esté actualizado después de usar la página de propiedades de VS, por lo que debe verificarlo.
Uso la reflexión AssemblyInfo para todos los demás tipos de aplicaciones para mostrar el nombre oficial del producto y la versión de compilación en una página sobre, sin duda es correcto. Pero para estos tipos especiales de aplicaciones para teléfonos, el manifiesto de la tienda tiene más importancia y otros atributos que pueda necesitar.
Esta solución no funciona cuando estamos utilizando recursos localizados: @ AppResLib.dll, -101. –