Breast cancer rates in the city have increased by almost a third since the 1970s, health officials said ahead of International Women's Day today.
This is due to a move toward fatty and low fiber diets, women taking less exercise, a decline in breast feeding and the population living longer, said Shanghai Center for Disease Control and Prevention.
There are some 3,800 new patients with breast cancer in the city and the figure is rising by about 100 each year.
Shanghai has about 49,000 new cancer patients each year, the highest incidence in the country. Officials attribute this to the city's more comprehensive cancer database, higher living standards, unhealthy lifestyle and the growing elderly population.
Breast and colon cancer, which make up one fifth of these cases, are increasing quickest. Overall, lung cancer is the most common form, followed by colon cancer. Breast cancer is the most prevalent female cancer.
Diet can play a major role in preventing and controlling breast cancer, said Zheng Ying from Shanghai CDC.
A five-year research program by Shanghai CDC found that eating 11 grams of soya protein per day can greatly reduce mortality.
Shanghai CDC followed 5,000 breast cancer patients aged between 20 and 74 years old and found people with a high intake of soya products have a 29 percent lower risk of mortality and 32 percent lower risk of relapse.
Soya products contain flavonoid - a plant-derived estrogen - which reduces the estrogen generated by women and helps prevent breast cancer.
"Though most Shanghai women eat soya bean products at least once a week, the amount and frequency are still low," Zheng said.